Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

AW: wenn a nicht existiert dann mache...

  Alt 16. Jun 2011, 13:37
Wenn man eine Variable auf den Inhalt prüfen möchte, dann muß man diese, beim Freigeben, natürlich auch zurücksetzen.

Delphi-Quellcode:
o.Free;
o := nil;
Da es hier aber ein Problem gibt, wenn es im Free eine Exception gibt, wurde Delphi-Referenz durchsuchenFreeAndNil bereitgestellt,
welches erst die Variable auf NIL setzt und dann das Objekt frei gibt.


Wer jetzt parallel mit Kopieen der alten Variable arbeitet (z.B. in irgendwelchen Listen, anderen Variablen oder Parametern ohne VAR), ist selber Schuld, wenn dort noch der alte Objektzeiger drinsteht, selbst nach Freigabe/Änderung in der Originalvariable.
$2B or not $2B

Geändert von himitsu (16. Jun 2011 um 14:06 Uhr)
  Mit Zitat antworten Zitat