![]() |
Matriz dinamica
hola amigos del foro, nuevamente preguntando y agradeciendo su colaboracion, tema del dia.
matrices dinamicas lo unico q estuve haciendo hasta el momento fueron array dinamicos del tipo const int SIZE=4; int * A; A=new int[SIZE]; delete []A; me preguntaba como seria el codigo para trabajar con una matriz dinamica, las estaticas las manejo int Matriz[][]; pero las dinamicas no tngo idea si alguien me facilitaria un codigo pequeño, como definir una int matiz de 2 x2 dinamicamente, cargarla .y borrarla. muchisimas gracias :D BC++ |
Por ejemplo:
Crear matriz de nombres (tipo char) Código:
int N = 10; //Numero de nombres Código:
for(int n=0; n<NNombres; n++) delete Nombres[n]; // Libera de uno en uno... Código:
delete [] Nombres; // Libera toda la matriz... |
Bueno, no se que tan tarde llegué, pero va, tal vez a alguien le sirva ^_^
**Para declarar una matriz dinámica pues haces lo siguiente... //suponiendo que sea de 2x2 como dices... int **valor; valor=new int *[2]; for(int i=0;i<2;i++) { valor[i]=new int[2]; } y ya queda lista tu variable para usarla, ahora para liberarla podríamos decir que es lo mismo, pero al revés, jajaja... for(int i=0;i<2;i++) { delete[] valor[i]; } delete[] valor; eso es todo, espero que sea de ayuda... |
Que tal,
Yo en lugar de usar estos metodos de creacion de "matrices" dinamicas, usaría una lista de objetos TList que a asu vez puede una lista de listas, asi no importa cuanto crezca la matriz, ni la dimension, solo basta con ObjLista->Add(x) y listo. Saludos |
Ya... Eso es seguramente lo más práctico, pero no es C++ sino un buen uso de las VCL.
Las matrices dinámicas, y en general el uso de punteros es programación de bajo nivel. Esto da gran potencia y velocidad al código, a cambio de tener que estar pendiente del "control" y asignación de memoria. Según la tarea a realizar, puede ser mas interesante una u otra forma de afrontar el problema. Saludos. |
Hola
Hace mucho hice una dll a la cual le pasaba una matriz dinámica por referencia Esta es una parte del código de la dll lo que estaba tratando de hacer era calcular autovectores,e tc Salu2 |
gracias!
muchas gracias a todos =)
|
Yo hice esto
mm.. bueno yo necesitaba una matriz igual que fuera dinamica la asignacion de su tamaño... bueno... esto fué lo que hice esto ........
double* datosObtenidos = new double[ListBox1->GetCount()]; for (int i = 0; i <sizeof(datosObtenidos); i++) { datosObtenidos[i] = ListBox1->Items->Strings[i].ToDouble(); } Variant Excel,Libro,Hoja,Celda; Excel = CreateOleObject("Excel.Application"); y funciona... bueno... es todo saludossss :p |
La franja horaria es GMT +2. Ahora son las 07:34:40. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi