(Moderator)
Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
Delphi 2006 Professional
|
Re: Objekte (Klassen) freigeben notwendig?
22. Jun 2006, 17:15
prinzipiell gilt in Delphi. Speicher den du selbst Anforderst musst du auch selbst frei geben.
TObjec.Create fordert auch speicher an, und somit solltest du den Speicher auch freigeben.
Es gibt eine Ausnahme wo man speicher nicht freigeben muss (aber kann):
Alle Klassen die von TComponent abgleitet sind bzw. TComponent selbst haben beim Constructor den Parameter Owner. Ezreugst du eine Komponente (TComponent + Nachfahren) und übergibst dort einen Owner so wird deine Komponente frei gegeben wenn der Owner frei gegeben wird. Es schade allerdings auch nicth wenn du die Komponente selbst frei gibst bevor du den Owner frei gibst.
Man sollte sich generell angewöhnen Speicher den man angefordert hat auch wieder frei zu geben.
Jens Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
|