我有一個基於TInterfacedObject的類。我將它添加到TTreeNode的Data屬性中。爲什麼不收集TInterfacedObject垃圾的後代?
TFacilityTreeItem=class(TInterfacedObject)
private
m_guidItem:TGUID;
m_SomeOtherNode:TTreeNode;
public
end;
我創建這個對象&的許多情況下,曾以爲,因爲他們是引用計數的,我不應該需要釋放他們。那會很方便。然而,當檢查這個時,我打開了ReportMemoryLeaksOnShutdown,發現它們並沒有被釋放。
這些對象是在放置在主窗體上的框架中創建的。在主窗體的FormClose中,我清除樹節點,以便每個對象都應該被釋放。
發生了什麼事?
謝謝你的幫助!
謝謝你的回答;我將使用TObject代替。學到了新東西! – 2009-01-27 22:13:19