Forum: Object-Pascal / Delphi-Language
Delphi
by fajac,
22. Okt 2009
var
ObjektReferenz : TObjektTyp;
begin
ObjektReferenz = TObjektTyp.Create();
Objektreferenz stellt einen Pointer dar, der auf eine Instanz von TObjektTyp zeigt (d.h.: Objektvariablen sind immer Pointer).
Durch den Aufruf wird eine Instanz von TObjektTyp erzeugt und ihre Speicheradresse Objektreferenz zugewiesen.
Wenn man nun
Forum: Object-Pascal / Delphi-Language
Delphi
by fajac,
22. Okt 2009
genau; du brauchst für jede Objektinstanz, die du mit "Create" erzeugst, eine Referenz. Sonst kannst du sie später nicht mehr freigeben.
Der eigentliche Fehler liegt aber, glaube ich darin, dass du im Destruktor von TObjekt1 Objekt2 freigibst, obwohl es nirgends erzeugt wurde, zumindest dann, wenn TObjekt1 mit Anders=1 erzeugt wurde.