Ver Mensaje Individual
  #4  
Antiguo 10-03-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.610
Reputación: 32
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¡Ah! Entonces SÍ ejecuta la sección de finalización, sólo que no entra al If que mencionas.

Lo primero que salta a la vista es que si usas FreeAndNil no necesitas comprobar que la variable sea diferente de Nil. Es decir, si dentro de ese If solamente tienes la llamada a FreeAndNil, el If sobra (FreeAndNil admite punteros con valor de Nil, no haciendo nada si fuese el caso).

¿Sería mucho problema poner el código real completo de las secciones Initialization y Finalization de esa unidad?

¿Cómo compruebas el valor de la variable objeto? Detenido el programa en el punto de ruptura del If (o del FreeAndNil en caso de que quites el If), si agregas una entrada a la lista Watches "Variable = Nil", ¿qué valor se muestra ahí?
Responder Con Cita