• ベストアンサー

Delphiでインスタンスが作成されているかどうか

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

質問者が選んだベストアンサー

  • ベストアンサー
  • aztek
  • ベストアンサー率50% (5/10)
回答No.1

直接的な解法ではありませんが、現場でよくやってる方法です。 if xxx <> nil then begin xxx.free; xxx := nil; end;

kihonkana
質問者

お礼

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

kihonkana
質問者

補足

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

その他の回答 (1)

  • aztek
  • ベストアンサー率50% (5/10)
回答No.2

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

関連するQ&A

専門家に質問してみよう