
31/12/2007, 11:40
|
 | | | Fecha de Ingreso: noviembre-2007
Mensajes: 45
Antigüedad: 17 años, 2 meses Puntos: 0 | |
Re: c++ (problema al usar punteros con clases y vectores!!) m_punto1 y p digo yo que son del mismo tipo de estructura o clase,
has sobrecargado el operador "=" por si acaso? de la cosa "CCelda" claro
por cierto: "quiero hacer un vector de objetos (CCeldas) y necesito que sea un puntero porque tengo que devolverlo en una función. "
si quieres que sea cada posicion un puntero al objeto CCelda debe ser:
CCeldas** celdita; (vector de punteros a CCelda)
Obviamente implicará llamar al constructor de la cada en cada posicion del array una vez creado.
(1)
celdita = new CCelda[n]; //creas vector de punteros de tipo CCelda
(2)
//deberian apuntar a null o lo haces tu
for i desde 0 hasta n
celdita[i] = new CCelda; //creo puntero tipo CCelda en cada casilla
Destructor:
for i desde 0 hasta n
//quizas comprobante if celdita[i]
delete celdita[i]; //voy borrando lo que apunta cada casilla
delete [] celdita; //borro el vector de memoria
Digo esto porque tal y como lo tienes no se guarda un puntero a "CCelda" en cada posicion, sino un objeto CCelda. ooo quizas he metido la pata y no te referis a eso sino a lo que es "m_punto1" ;)
Última edición por Solenbum; 31/12/2007 a las 11:50 |