Zitat von
BlackJack:
... da FTimer ja wie gesagt nicht initialisiert ist und speichermüll enthält.
Stimmt so nicht, da Objektfelder immer mit 0 bzw. Nil oder '' initialisiert werden. D.h. hier hat man den Owner "von hinten durch die Brust ins Auge" auf Nil gesetzt und muss den Timer deshalb selber freigeben. Wenn FTimer auf Müll zeigen würde, gäbe es eine
AV im Constructor. (s. TComponent.Create in der
VCL)
Im übrigen gebe ich Dir vollkommen recht: Entweder der Owner wird explizit auf Nil gesetzt, was mir sofort signalisiert, ich muss selber die Freigabe vornehmen, oder ich gebe einen sinnvollen Owner an, sprich eine existierende Komponente. (Hier am besten self.)
Gruß, teebee