Universidad de Costa Rica
|
|
Las operaciones encargadas de inicializar y destruir cada una de las instancias una clase son los constructores y destructores. En general, es vital que el programador inicialice todos los objetos o variables que usa; el usar una variable antes de inicializarla es siempre un error, aunque algunos programadores tienen la suerte de incurrir en esta omisión sin que les falle su programa. El destructor es particularmente importante si el lenguaje no incluye un recolector de basura, pues en general la labor del destructor es devolver toda la memoria dinámica asociada a un objeto una vez que el objeto ya no se usará más en el programa.
En esta tarea usted debe hacer un programa que muestre el efecto de usar una clase a la que le falta el destructor. Para eso, haga la especificación de tres procedimientos en los que se use una clase a la que le falta el destructor, y que en consecuencia produce resultados incorrectos o equivocados. En su documentación, explique bien cómo falla el programa debido a la carencia del destructor.
Debe usar la clase lista que implementó en la tercera tarea programada como base para uno de los tres casos en que usted muestre el efecto negativo de no usar destructores.
No implemente este programa en Java o C#, pues estos lenguajes siempre usan un recolector de basura, por lo que no es fácil escribir una clase que falle debido a la carencia del destructor.
Entregue su tarea por correo electrónico, como lo hizo anteriormente.
Tiempo de entrega: | 1 semana |
Modalidad: | Individual |
Adolfo Di Mare <adolfo@di-mare.com>.
|