Estoy tratando de crear una clase como tal:¿Hay alguna manera de inicializar una matriz con variables no constantes? (C++)
class CLASS
{
public:
//stuff
private:
int x, y;
char array[x][y];
};
Por supuesto, esto no funciona hasta que cambie int x, y;
a
const static int x = 10, y = 10;
cual es poco práctico, porque estoy tratando para leer los valores de xey de un archivo. Entonces, ¿hay alguna manera de inicializar una matriz con valores no contantes, o declarar una matriz y declarar su tamaño en diferentes declaraciones? Y sé que esto probablemente requeriría la creación de una clase de matriz, pero no estoy seguro de dónde comenzar con esto, y no quiero crear una lista dinámica 2D cuando la matriz en sí misma no es dinámica, solo el tamaño es no conocido en tiempo de compilación.
y para acceder a un elemento en particular, podría decir array [xpos] [ypos] ;? –
Sí Keand64, simplemente use array [xpos] [ypos]; –
Eso es malo. ¿Qué hay de la construcción de copias? Operador de asignación. ¿Por qué no tener toda la memoria en un bloque contiguo en lugar de una matriz de matrices? ¿Qué pasa con el manejo de excepciones en el constructor? –