• ベストアンサー

Delphiの変数について

Delphiでプログラムを作成しています。 現状はとりあえずうまく動作しているようですが、グローバル変数、ローカル変数、クラス内のpublic、private内の変数?とかの宣言が整理できていません。 ほとんどがローカル変数とグローバル変数として宣言してしまっています。 今、整理している最中ですが、変数の宣言の場所を移動しても、コンパイルでエラーが出なければ、OKと考えてもいいのでしょうか? (動作中にエラーがでることはないと考えていいものでしょうか?)

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

  • ベストアンサー
  • nag0720
  • ベストアンサー率58% (1093/1860)
回答No.1

>変数の宣言の場所を移動しても、コンパイルでエラーが出なければ、OKと考えてもいいのでしょうか? そんなことはありません。 同じ名前の変数を複数箇所で定義している場合、参照場所によってどの変数を指すか決まっています。 変数のスコープを理解していないと、意図した変数を指していないことがありますから、場合によっては実行時エラーになります。 クラス内の変数は、クラスのオブジェクトが作成されていない状態で変数を参照すると実行時エラーとなります。 上記の現象はコンパイルではエラーにはなりません。

kihonkana
質問者

お礼

>同じ名前の変数を複数箇所で定義している場合、参照場所によってどの変数を指すか決まっています。 >変数のスコープを理解していないと、意図した変数を指していないことがありますから、場合によっては実行時エラーになります。 >クラス内の変数は、クラスのオブジェクトが作成されていない状態で変数を参照すると実行時エラーとなります。 >上記の現象はコンパイルではエラーにはなりません。 回答ありがとうございます。 一通り動かしてみるしかないということですね。 (ノ_・。)

関連するQ&A