掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ClassListでのクラス管理 (ID:27126)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
TClassListは、そのまま、FreeすればOKです。 特に解放処理は必要ありません。 といいますか、TClassListは、追加する項目(Item)は、インスタンスではなく、クラス参照ですので、そもそも生成、解放は関係ないです。 値型と同じ扱いでよいです。 TClassListの実装も、TListのItemにそのままTClassの値を代入しているだけです。 TObjectListは、全く別物です。 クラスのインスタンスが格納されるものですので、 どこかしかに、追加した項目(インスタンス)の解放の責任がついて回ります。 TObjectListは、Create時のAOwnsObjectsをTrueにすることで、 TObjectList.Free時に自動的に開放されます。 もし他の場所で解放されるようなものをTObjectListに突っ込む場合は、 AOwnsObjectsをFalseにして、開放しないようにしないといけません。 そうしないと、TObjectList.Free時に、二重に開放処理が行われ、エラーがでます。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.