Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Free eines unbekannten Objektes

  Alt 10. Sep 2008, 18:19
Ja, free löscht ja nicht die Referenzen auf das Objekt sondern nur das Objekt.
In Worldactor steht immer noch ein Pointer. Der zeigt zwar ins Nirvana (aber nicht nach nil) und zwar genau dorthin, wo früher mal ein Objekt war (ist wie, wenn in einer Landkarte Troja eingezeichnet ist). Aber das Objekt gibt es deswegen nicht.

Wenn du dieses Problem hast, dann musst du konsequent nach dem Aufruf von Free die Reerenz (oder die Referenzen) löschen (per Hand auf nil setzen.
Und da du nicht der erste bist, der dieses Problem hat, gibt es die Funktion FreeandNil. Die macht auch nix anderes. Aber du kannst dir ja angewöhnen anstatt MyObject.Free leber freeandnil(Myobject) aufzurufen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat