Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.930 Beiträge
 
Delphi 12 Athens
 
#4

Re: Variable mit Instanz belegt oder nicht???

  Alt 4. Jan 2005, 15:40
Assigned ist zwar eine Bedingung
aber keine hinreichende Bedingung
um auf die Existenz einer Instanz
zu schließen.

Delphi-Quellcode:
Procedure Wegdamit(o:tObject);
Begin
  o.free;
end;

ObjVariable1 := TMeinObject.create;
ObjVariable2 := ObjVariable1;
Wegdamit(ObjVariable1);
(*
Hier viele Objekte erzeugen
*)

If assigned(ObjVariable2) then
  Showmessage(ObjVariable2.MeinStringAttribut);
Hier wäre eine Zugriffsverletzung das Resultat.
Das ist aber nicht immer so nur wenn der Speicher,
der ja mit o.free freigegeben wurde, schon von anderen
Objekten überschrieben wurde tritt der Fehler auf.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat