• Miércoles 15 de Abril de 2026, 11:28

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - macalo

Páginas: [1]
1
C/C++ / Destrucción objeto
« en: Sábado 22 de Enero de 2011, 18:44 »
Hola,

Tengo una aplicación en la que todo parece que va bien hasta que pasado un tiempo,que nunca es el mismo, se cae.Parec que es un pisotön de memoria.
He estado mirando y no se si puede ser por esto:
class C;
class D;
class A{
 
  A();
  Ã();
};
A::A()
{
   p = new C;
   q =  new D;
A::Ã()
{

  delete p;
  delete q;
}
}
class B{

 A* a;
  void init(A* _a);
};
 void B::init(A* _a )
{
    a = _a;
 }
main()
{
   A* a = new A();
   B b;
  b.init(a);
}
En la llamada b.init(a) ¿se llama al destructor de la clase A cuando _a sale de su ambito y por consiguiente los punteros c y d están apuntando a basura?.O como
es un puntero lo que se le pasa al método lo que se destruye es el puntero y no a lo que apunta.
Si este es el caso se solucionaría con un operador de asignación donde se asigne memoria a dichos punteros.¿no?
Saludos

 :D

Páginas: [1]