Me gustaría poder convertir entre std :: vector y su matriz C subyacente int * sin copiar explícitamente los datos.Conversión entre C++ std :: vector y C array sin copiar
¿std :: vector proporciona acceso a la matriz C subyacente? Busco algo como esto
vector<int> v (4,100)
int* pv = v.c_array();
EDIT:
Además, es posible hacer lo contrario, es decir, ¿cómo iba a inicializar un std::vector
de una matriz C sin copiar?
int pv[4] = { 4, 4, 4, 4};
vector<int> v (pv);
Hay un 'problema' con esto: int pv [4] = {4, 4, 4, 4}; vector v (pv); en realidad copia los contenidos de pv en v ... solo tiene que tener en cuenta que –
fho