Registriert seit: 12. Aug 2003
Ort: Soest
4.017 Beiträge
Delphi 10.1 Berlin Enterprise
|
AW: Fehlertoleranz DELPHI Compiler
27. Nov 2012, 13:00
Klassischer Fall von Objekt über seine lifetime hinaus benutzt.
Will man dem entgehen, muss man entweder genau Herr darüber sein, wann wer was frei gibt oder man wendet sich einer GC Sprache zu, da kann man anders rumfuhrwerken.
In deinem konkreten Fall würde ich aber eher ein Architektur Problem vermuten, da dein TForm2 das TDataClass Objekt erzeugt, während TForm1 das scheinbar nicht macht. Wenn doch, dann hast du an der gezeigten Stelle nicht nur einen dangling Pointer sondern auch ein Memory leak. An dieser Stelle steht dann die Entscheidung, ob du exakt dieselbe Instanz brauchst, oder ob dort ein Assign Aufruf reicht, um bloß den State von dem einen TDataClass Objekt ins andere zu schieben.
|