掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TList, TMenuItemの項目のメモリ開放について (ID:44842)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
まず、一般にnilを代入するのと削除は異なります。 代入するのは参照先を別のオブジェクトに差し替えているだけですから、むしろ「あえて削除せずにリストから外したい」という場合の書き方かと思います。 Clearに関してですが、TMenuItemのClearは「すべてのメニュー項目を削除および解放します」とヘルプで説明してありますね。 一方、TListのClearは単に配列の使用しているメモリを解放するだけです。 これはヘルプの説明だけ見てもはっきりしないかもしれませんが、 一般論としてTListはポインタの配列を管理するだけで、そのポインタが指している先までは面倒を見ません。 で、そういうTObjectの寿命管理までしてもらいたい場合は、TObjectListをOwnsObject=trueにして使います。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.