Quiero pasar un vector (de la STL) a una función para modificar/acceder su contenido.
He probado esto:
Código:
void getAllData( std::vector<unsigned char>* char_array )
{
char_array->reserve(10);
char_array[0] = 1; //Esto no funciona, da error al compilar
char_array->push_back( 1 ); //Esto funciona
unsigned char temp = char_array[0]; //Error de compilación.
}
Sin embargo yo quisiera poder utilizar el operador [ ] para también leer datos del vector. Encontré esto:
Código:
void getAllData( std::vector<unsigned char>& char_array )
{
char_array->reserve(10);
char_array[0] = 1; //No da error pero parece no tener efecto al salir de la función (teniendo comentada por supuesto la siguiente linea)
char_array.push_back( 1 ); //Esto funciona
}
Cual es la forma correcta de tratar con vectores STL??