電子書籍の厳選無料作品が豊富!

Delphiでインスタンスが作成されているかどうかプログラム中で調べる方法はありますか?
あるインスタンスが条件によって作成されるときと、されないときがあります。
作成されていれば、xxx.Free
作成されていなければ、何もしない
というようにしたいのですが。

こんな時にはフラグとかを使うものでしょうか?
それとも、xxx.Createした後でxxx.Freeとするのでしょうか?

A 回答 (2件)

直接的な解法ではありませんが、現場でよくやってる方法です。



if xxx <> nil then
begin
xxx.free;
xxx := nil;
end;

この回答への補足

回答ありがとうございます。

こんな方法があったんですか、知りませんでした。
ところで
xxx := nil;
は要るのでしょうか?
今までxxx.Freeでやってきたんですけど、まずいですか?

補足日時:2014/06/19 10:49
    • good
    • 0
この回答へのお礼

ありがとうございます。
うまくいきました。

お礼日時:2014/06/21 16:01

xxx.free を実行しても、xxx にポインタの値が入っているので、xxx := nil は必須です。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!