クラスAの静的関数(funA())にアクセスしましたが、このクラスのすべての関数は静的ですが、未定義参照エラーが発生しました。私はヘッダーを含めました未定義の参照エラーC++
助けてください。
// H file
Class A
{
static void funA();
};
// Cpp file
void A::funA() { }
Accessed in class B
void B::funB()
{
A::funA()
}
クラスAの静的関数(funA())にアクセスしましたが、このクラスのすべての関数は静的ですが、未定義参照エラーが発生しました。私はヘッダーを含めました未定義の参照エラーC++
助けてください。
// H file
Class A
{
static void funA();
};
// Cpp file
void A::funA() { }
Accessed in class B
void B::funB()
{
A::funA()
}
あなたのヘッダーでこのような何かを持っていることを確認してください:必要に応じて
// a.h
class A {
static void funA();
};
// a.cpp
void
A::funA() {
// do something on your function
}
それだけのこと – Sijith
あなたは常に
を使用する前に、cppのファイルに静的関数と変数をinitizalize必要がありますが、これはあなたのコンパイラエラーを与えるので、あなたが、あなたのコード内で二重の宣言を持っている可能性があります。
static void FunA()
の前にpublic:
の部分が欠けているようです。それを編集するのを忘れてしまったのか、それとも本当にあなたの.cppに欠けているのでしょうか?
実際に実装ファイルに質問を定義していますか? –
実際のコードと実際のエラーを掲載してください。 –
クラスAのコードを投稿して、関数をどのように呼び出すのですか! – Nawaz