C/Visual C - como declarar correctamente una matriz dentro de una posicion de un vector

 
Vista:
sin imagen de perfil

como declarar correctamente una matriz dentro de una posicion de un vector

Publicado por bryan (1 intervención) el 29/09/2015 10:29:11
basicamente estoy realizando un programa de una agenda virtual y necesito saber como declarar correctamente
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

como declarar correctamente una matriz dentro de una posicion de un vector

Publicado por Tom (619 intervenciones) el 29/09/2015 17:26:31
Si estás hablando de C++, de la clase std::vector, y de un array de, por ejemplo, enteros, la respuesta corta es que _no_ puedes.

La respuesta menos corta es que no puedes, porque en c++ no se permite asignar directamente un array a otro.

Una solución es usar punteros en lugar de arrays:

1
2
3
4
std::vector<int *> v;
int test[] = {1, 2, 3, 4};
 
v.push_back(test);
pero deberás tener mucho cuidado al acceder a los elementos del array.

Otra solución mejor es usar una clase que encapsule tu array, o usar un compilador reciente que defina std::array:

1
2
3
4
std::vector<std::array<int, 4>> v;
std::array<int, 4> test = {1, 2, 3, 4};
 
v.push_back(test);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar