0
我有以下classA.h編譯C時,遇到了一個未解決的外部符號++類
#ifndef ClassAH
#define ClassAH
class A
{
public :
A();
~A();
static std::map< std::string, std::vector<string> > getSomething();
}
#endif
和classA.cpp
#include classA.h
std::map< std::string, std::vetor<string> > classA::getSomething()
{
//implementation
return map
}
現在我有另一個類classB.cpp實施中我在做:
#include classA.h
void method1()
{
std::map< std::string, std::vector<string> > map = classA::getSomething();
}
注意getSomething()是靜態的。
當我編譯classB 我得到了方法getSomething()說錯誤LNK2019說無法解析的外部符號....在method1()引用。
這裏怎麼回事?
我其實包括A ::在我的定義,(我忘了在我原來的職位,現在我編輯問題),但仍然得到錯誤,當我在classB.cpp – SomeDude 2014-09-19 20:08:16
中調用這個錯誤時,你的類是'A',但是在你輸入classA :: – 2014-09-19 20:13:31
的代碼中,沒關係我解決了它。我不得不修改一個定義文件。謝謝。 – SomeDude 2014-09-19 22:20:38