0

コードを含むヘッダーファイルAがあり、

#define varA 1

そして、ヘッダー ファイルをインクルードしたヘッダー ファイル B。ヘッダー ファイル B に次の静的メソッドがあります。

static void MakeBFromA(){ 
int varB = varA;
}

varA未定義のエラーが発生します。しかし、#define varA 1ヘッダー ファイル B に移動すると、正常に動作します。#define静的メソッドで別のファイルの変数を使用できないのはなぜですか?

4

1 に答える 1

1

#defineプリプロセッサ構造です。
現在のファイルにのみ適用されます。

代わりに、 C++ を作成できますconst

于 2013-04-26T01:40:03.370 に答える