TInterfacedObjectに基づくクラスがあります。TTreeNodeのDataプロパティに追加します。
TFacilityTreeItem=class(TInterfacedObject)
private
m_guidItem:TGUID;
m_SomeOtherNode:TTreeNode;
public
end;
私はこのオブジェクトの多くのインスタンスを作成し、それらは参照カウントであるため、それらを解放する必要はないと想定していました。それは便利でしょう。
ただし、これを確認すると、ReportMemoryLeaksOnShutdownをオンにしたところ、結局解放されていないことがわかりました。
これらのオブジェクトは、メインフォームに配置されたフレームに作成されています。メインフォームのFormCloseで、すべてのオブジェクトが解放されるようにツリーノードをクリアします。
何が起こっていますか?
ご協力ありがとうございました!