Bienvenido(a), Visitante. Favor de ingresar o registrarse.

Ingresar con nombre de usuario, contraseña y duración de la sesión

Foros del Club

Páginas: [1]   Ir Abajo
  Enviar tema  |  Imprimir  
Autor Tema: Destructor De Clases (Ayuda)  (Leído 484 veces)
0 Usuarios y 2 Visitantes están viendo este tema.
Ge0Ks
Technocrat
*********

Prestigio: 3
Desconectado Desconectado

Mensajes: 131



« en: 06/02/2007, 11:06:22 »

hola a todos, mi problema es que quiero usar un destructor y que ese destructor llame a otro destructor de otra clase... algo asi

Citar
~Clase1() {Objeto1.~Clase2();};

pero el error que me da es el siguiente ....

[C++ Error] Propietario.h(48): E2045 Destructor name must match the class name

si alguien sabe una posible respuesta favor de contestar
En línea




Gracias Mari -- germanb@hotdesign.com.ar --
                  -- germanazo@papadedios.com.ar --
M@th
Elite
********

Prestigio: 5
Desconectado Desconectado

Sexo: Masculino
Mensajes: 89


Nunca falta alguien que sobra.



Lenguajes:
PHP, C++, HTML, CSS, ActionScript.
Bases de datos:
MySQL.
« Respuesta #1 en: 06/02/2007, 13:39:24 »

Yo estoy aprendiendo, así que mucho no puedo decir...

Pero, según lo que dice ahí... El nombre de la clase no coincide con el del destructor... Ya te fijaste si:
1. El destructor ~Clase1 es igual al nombre de la clase. (O sea, la clase debería llamarse Clase1).
2. El destructor ~Clase2 es igual al nombre de la clase. (O sea, la clase debería llamarse Clase2).

Otra cosa:
Tengo entendido que los destructores se ejecutan solos... no se si se pueden invocar...

Bueno, no se si ayude, como ya dije antes, apenas estoy aprendiendo C++...

Saludos.
En línea

Tavo
Technocrat
*********

Prestigio: 0
Desconectado Desconectado

Sexo: Masculino
Título universitario: Ninguno
Profesión: GameDeveloper(GD) y Desarrollador
Mensajes: 144




Lenguajes:
Visual Basic
Real Basic
Python
C/C++
Java
SQL
Bases de datos:
SQLite
MySQL
« Respuesta #2 en: 06/02/2007, 17:06:03 »

El destructor SOLO es invocado cuando se destruye un objeto, NO puede ser invocado de otra forma.
En línea

CID
Administrador
Legend
*****

Prestigio: 22
Desconectado Desconectado

Sexo: Masculino
Estudiante de: Arte de la informática
Título universitario: Programador
Profesión: Desarrollador
Mensajes: 1136



WWW
Lenguajes:
Varios
Bases de datos:
Varios
« Respuesta #3 en: 06/02/2007, 17:28:30 »

Los destructores se ejecutan automáticamente siempre que una instancia estática del mismo se debe quitar de la pila de ejecución y siempre que una instancia dinámica se destruye con el operador delete.
En línea

Ge0Ks
Technocrat
*********

Prestigio: 3
Desconectado Desconectado

Mensajes: 131



« Respuesta #4 en: 09/02/2007, 13:17:46 »

hola querias comentarle que ya solucione el problema como lo hice Huh?  Impresionado

de la siguiente manera
Citar
    //instancio un objeto de la clase 2 la que quiero destruir
    Clase2 *O2 = new Clase2;
    ....
    //en el destructor de la clase 1 solo tengo que liberar el puntero
    ~Clase1() {delete O2;}

creo ke es la mejor manera no se...
En línea




Gracias Mari -- germanb@hotdesign.com.ar --
                  -- germanazo@papadedios.com.ar --
Foros del Club
   

 En línea
Páginas: [1]   Ir Arriba
  Enviar tema  |  Imprimir  
 
Ir a: