dポイントプレゼントキャンペーン実施中!

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

A 回答 (1件)

>変数の宣言の場所を移動しても、コンパイルでエラーが出なければ、OKと考えてもいいのでしょうか?



そんなことはありません。


同じ名前の変数を複数箇所で定義している場合、参照場所によってどの変数を指すか決まっています。
変数のスコープを理解していないと、意図した変数を指していないことがありますから、場合によっては実行時エラーになります。

クラス内の変数は、クラスのオブジェクトが作成されていない状態で変数を参照すると実行時エラーとなります。

上記の現象はコンパイルではエラーにはなりません。
    • good
    • 0
この回答へのお礼

>同じ名前の変数を複数箇所で定義している場合、参照場所によってどの変数を指すか決まっています。
>変数のスコープを理解していないと、意図した変数を指していないことがありますから、場合によっては実行時エラーになります。

>クラス内の変数は、クラスのオブジェクトが作成されていない状態で変数を参照すると実行時エラーとなります。

>上記の現象はコンパイルではエラーにはなりません。

回答ありがとうございます。
一通り動かしてみるしかないということですね。
(ノ_・。)

お礼日時:2014/11/12 21:19

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