我在類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()
}
你已經包括了正確的.lib
文件,如果有必要嗎?
確保你有這樣的事情在你的頭:
// a.h
class A {
static void funA();
};
// a.cpp
void
A::funA() {
// do something on your function
}
你應該總是initizalize靜態函數和CPP文件變量使用
之前,有沒有可能是你在你的代碼雙重申報,因爲這會給你一個編譯器錯誤。
從您的編輯看來,您似乎錯過了static void FunA()
之前的public:
部分..你忘了編輯它,或者它可能在你的.cpp文件中丟失了嗎?
你確實在*定義了執行文件的問題嗎? – 2011-02-05 15:15:03
發佈實際代碼和實際錯誤。 – 2011-02-05 15:15:06
請發佈類`A`的代碼以及如何調用該函數! – Nawaz 2011-02-05 15:15:41