Programación General > C/C++

 declaracion y uso de matrices dinamicas en c++

(1/3) > >>

mabama:
Soy novato en c++ y no sé como declarar matrices dinamicas y como utilizarlas.
He visto en otros temas como hacerlo, pero con la funcion de malloc de c, yo prefiero no hacerlo asi.
Mi idea de hacerlo, es como si fuera un array simple...pero como es normal, no me funciona
¿como podría hacerlo?
un array simple, lo estoy haciendo del estilo
main (){
int array[elementos];
funcion (array);
}
y la cabecera de funcion
void funcion (int *array)

la matriz comence a hacerla (claramente esta mal)
main(){
int matriz[a];
funcion(matriz);
}
void funcion(int **array){
matriz[1][1]=0;      //Esto no esta nada bien
}
¿cómo podria hacerlo?
Me hago un lio con los punteros. me podría recomendar un buen manual?
Gracias
Un saludo

fachamix:
pone en google


C con clase

m0skit0:

--- Cita de: "mabama" ---He visto en otros temas como hacerlo, pero con la funcion de malloc de c, yo prefiero no hacerlo asi.
--- Fin de la cita ---
No se trata de preferir o no, se trata de que sólo se puede hacer así si quieres memoria dinámica. Lo de int matriz[a]; es lo que está mal, no se puede definir el tamaño de un vector con variables porque se debe reservar el espacio en compilación. Si lo que quieres es que la matriz pueda tener diferentes tamaños, sólo te queda usar memoria dinámica, que por cierto, tratándose de C++, mejor clases y new/delete, y no malloc()/free().

Saludos

mabama:
De acuerdo. Lo haré con clases.
Muchas gracias.
Un saludo

mabama:
Otra duda que tengo, ¿qué diferencia tendría entre usar caso1 y caso2?
caso1:
main {
    while () {
        bool A[x];

   }
}

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa