Ver Mensaje Individual
  #8  
Antiguo 12-11-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Reputación: 17
donald shimoda Va por buen camino
Cita:
Empezado por Al González Ver Mensaje
En Delphi es de lo más seguro, Donald.

Cuando el objeto es Nil y el método Free hace esta validación:

Código Delphi [-]if Self <> nil then

,

está preguntando si Nil es diferente de Nil, en cuyo caso llama a Destroy. De lo contrario no hace absolutamente nada. Si Free fuese un método virtual o hiciera alguna otra cosa con la "improbable" instancia, entonces sí sería inadecuado usarlo en esos casos.

Self es un parámetro implícito que llevan todos los métodos y equivale al puntero en sí de la instancia en cuestión. Nil, cuando el puntero está en blanco. No hay absolutamente ningún problema.

¿Ya convencido?
La verdad con tu explicación para nada ya que no me contas nada nuevo.
Estas explicándome que hace el código y que es self .
Lo que quiero saber es porque razón un puntero a la nada (nil) es seguro.

Saludos.
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita