|
El
complemento a los constructores de una clase es el destructor.
Así como el constructor se llama al declarar o crear un objeto,
el destructor es llamado cuando el objeto va a dejar
de existir por haber llegado al final de su vida. En el caso de
que un objeto (local o auto) haya sido definido dentro
de un bloque {
}, el destructor es llamado cuando
el programa llega al final de ese bloque.Si el objeto es global
o static su duración es la misma que la del programa,
y por tanto el destructor es llamado al terminar la
ejecución del programa. Los objetos creados con reserva
dinámica de memoria (en general, los creados con
el operador new) no están sometidos a las reglas
de duración habituales, y existen hasta que el programa termina
o hasta que son explícitamente destruidos con el
operador delete. En este caso la responsabilidad es
del programador, y no del compilador o del sistema operativo.
A
diferencia del constructor, el destructor
es siempre único (no puede estar sobrecargado) y no
tiene argumentos en ningún caso. Tampoco tiene valor
de retorno. Su nombre es el mismo que el de la clase precedido
por el carácter tilde (~), carácter que se consigue
con Alt+126 en el teclado del PC. En el caso de que
el programador no defina un destructor, el compilador
de C++ proporciona un destructor de oficio,
que es casi siempre plenamente adecuado (excepto para liberar memoria
de vectores y matrices).
En
el caso de que la clase C_Cuenta necesitase un destructor,
la declaración sería así:
~C_Cuenta();
y
la definición de la clase, añadiendo en este caso
como variable miembro una cadena de caracteres que contenga el nombre
del titular, podría ser como sigue:
|
|