在SO上遇到這兩個鏈接器錯誤後,我再次遇到這些問題。但是,這次來源似乎在另一個點上。帶模板功能的LNK2019和LNK1120
編譯器錯誤顯示它找不到具有簽名""public: unsigned int __thiscall MyClass::myFunction<unsigned int>(int)const "
的功能。
但是,將myClass.cpp
的內容移動到main.cpp
的作品。不知道爲什麼(的myClass.cpp
所有其他內容不存在這個問題。(其它功能都沒有模板)。
myClass.h
#ifndef X
#define X
class MyClass {
public:
template<class T>
T myFunction (int someArgument) const;
};
#endif
myClass.cpp
#include "myClass.h"
template<class T>
T MyClass::myFunction (int someArgument) const {
return T();
}
main.cpp
#include "myClass.h"
int main() {
MyClass a();
a.myFunction<unsigned int>(42);
return 0;
}
我該怎麼做fi x這個問題?