Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Dispose TTrees.Items[x].Data? (https://www.delphipraxis.net/67310-dispose-ttrees-items%5Bx%5D-data.html)

Benedikt1983 12. Apr 2006 22:00


Dispose TTrees.Items[x].Data?
 
Hallo zusammen!

Eine Frage zu TTreeView: Wenn ich die Nodes neu aufführe, muss ich dann die zuvor per New() allozierten Speicher über Dispose() wieder freigeben oder kann ich einfach TreeView.Items.Clear machen um allen Speicher wieder freizugeben?

Vielen Dank
Benedikt

SirThornberry 12. Apr 2006 22:05

Re: Dispose TTrees.Items[x].Data?
 
wenn du den speicher selbst mit new anforderst musst du ihn auch selbst freigeben. Schließlich weiß der Tree nicht wie/ob Data frei zu geben ist.

Benedikt1983 12. Apr 2006 22:24

Re: Dispose TTrees.Items[x].Data?
 
Ich hätte halt gedacht, dass TTreeNodes.Clear das macht... aber so ist es nicht?

SirThornberry 12. Apr 2006 22:26

Re: Dispose TTrees.Items[x].Data?
 
TreeNodes.Clear macht es nicht. Ist auch logich, schließlich kann ja in Data auch einfach ein Integer stehen (gecastet) und der zeigt ja nicht auf speicher. Oder in Date kann auch ein Object sein und das muss mit ".Free" freigegeben werden und nicht mit Dispose. Prinzipiell kann man sagen: Wer selbst speicher anfordert muss ihn auch selbst wieder freigeben.

Benedikt1983 13. Apr 2006 01:56

Re: Dispose TTrees.Items[x].Data?
 
Alles klar, thanx!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz