2011-02-05 88 views
-1

我在類A(該類中的所有函數都是靜態的)中都訪問了一個靜態函數(funA()),但卻得到了未定義的引用錯誤。我包含標題未定義的引用錯誤C++

請幫忙。

// H file 
Class A 
{ 

static void funA(); 
}; 

// Cpp file 
void A::funA() { } 

Accessed in class B 
void B::funB() 
{ 
A::funA() 
} 
+0

你確實在*定義了執行文件的問題嗎? – 2011-02-05 15:15:03

+1

發佈實際代碼和實際錯誤。 – 2011-02-05 15:15:06

+0

請發佈類`A`的代碼以及如何調用該函數! – Nawaz 2011-02-05 15:15:41

回答

0

你已經包括了正確的.lib文件,如果有必要嗎?

1

確保你有這樣的事情在你的頭:

// a.h 
class A { 
    static void funA(); 
}; 

// a.cpp 
void 
A::funA() { 
    // do something on your function 
} 
0

你應該總是initizalize靜態函數和CPP文件變量使用

0

之前,有沒有可能是你在你的代碼雙重申報,因爲這會給你一個編譯器錯誤。

1

從您的編輯看來,您似乎錯過了static void FunA()之前的public:部分..你忘了編輯它,或者它可能在你的.cpp文件中丟失了嗎?