Forum: Object-Pascal / Delphi-Language
Delphi
by moelski,
22. Nov 2010
Moin !
Durchaus richtig.
Gibt es denn überhaupt die Möglichkeit zu Prüfen ob eine Referenz noch auf eine gültige Instanz verweist?
Ich habe schon NIL / Assigend probiert. Das führt aber nicht zum Erfolg.
Das würde gehen. Aber evtl. gehts ja auch einfacher ?
Forum: Object-Pascal / Delphi-Language
Delphi
by moelski,
22. Nov 2010
Moin !
Ok dazu muss ich wohl etwas ausholen und ein bisserl beschreiben wie ich das einsetze ...
In der Anwendung gibt es mal eine ProjektListe (TObjectList).
Darin erstelle ich Instanzen von Projektklassen - Item_Project.
In Item_Project kann man in einer TObjectList wiederum Subelemente einhängen.
z.B. eine Instanz der Klasse Item_Device.
Forum: Object-Pascal / Delphi-Language
Delphi
by moelski,
22. Nov 2010
Moin Rufo,
Das versuche ich ja eben.
TForm1.FormDestroy
Das ich derzeit den Aufruf von hier starte ist im Moment rein für den Test gedacht.
Was wäre denn eine bessere Variante Objekte freizugeben die nicht einer ObjectList gehören?
Forum: Object-Pascal / Delphi-Language
Delphi
by moelski,
22. Nov 2010
Nur der Vollständigkeit halber ...
So klappts dann auch mit dem rekursiven Free:
procedure FreeLists(List : TObjectList);
var
I : Integer;
Pi : TPI_Root;
SubList : TObjectList;
begin
for I := List.Count - 1 downto 0 do begin
SubList := TPI_Root(List.Items).ITEM_SubItems;
Forum: Object-Pascal / Delphi-Language
Delphi
by moelski,
22. Nov 2010
Moin !
Habe da eine Objektliste die ich mit Objektinstanzen fülle.
Diese Objektinstanzen haben wiederum eine Property "Subitems" welches dann wieder eine TObjectList ist.
Damit kann man verschachtelte Objektstrukturen erzeugen. Funzt auch soweit.
Wenn ich nun aber "ReportMemoryLeaksOnShutdown := True" setze, dann bekomme ich Leaks.
Ich habe mal eine kleine Testanwendung...