定義に小さな問題があります。整数変数に割り当てたいのですが、コンパイラはそれが宣言されていないと言います。
コードは次のようになります。
#ifndef DEFINES_H
#define DEFINES_H
#define MYDEFINE 2
#endif
myclass.h
namespace mynamespace {
class myClass {
int someFunction();
};
}
myclass.cxx
#include "defines.h"
#include "myclass.h"
namespace mynamespace {
int myClass::someFunction() {
int var = MYDEFINE;
return 0;
}
}
int 割り当てのある行で、コンパイラ エラーが発生します。また、上記と同じヘッダー ファイルで定義された別の定義を、同じ効果を持つ関数パラメーターとして使用しようとしました。何か案は?前もって感謝します。
define を使用するのは悪い習慣であることはわかっていますが、既存のプロジェクトを拡張するだけで、その設計方法にとどまるようにしています。
編集: エラー メッセージは次のFehler 1 error C2065: 'MYDEFINE': nichtdeklarierter Bezeichner ...
とおりです。
EDIT2: #warning のヒントをありがとう。異なるフォルダに同じ名前のファイルが 2 つありました。コンパイラがこれを表示しなかった理由がわかりません。とにかく、それは今動作します。