掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
Createしたコントロール、配列変数などの開放 (ID:21758)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> のように作ったものは一つずつ ChkName[i].Free; のようにすれば開放できるのでしょうか? yes Freeより、FreeAndNilで、nilを入れておいた方が無難。 自分でCreateしたクラスは、自分で責任もって破棄するのが望ましい・・・と思う。 コンポーネントは、Create(Owner) において、Owner を指定しておけば、Ownerの 破棄時に自動的に消えてくれるので、ある程度安心。 今回の場合、TCheckBoxの位置が固定であるなら、きっちり破棄(Free)しておかないと、 コンポーネントが重なり続けるし、要素が減ったときも、以前のTCheckBoxが 表示されたままになるでしょう。 > SetLength で例えば前回大きな配列をつくったものでも2回目で > 小さな配列を作り直せばわざわざ開放しないでも良いのかどうか? yes 配列の要素数が変更されるだけなので、ChkName[i].Free してから使用しましょう。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.