在SO上的这两个链接器错误出现一些问题后,我又遇到了。然而,这一次的源头似乎在另一个点。
编译器错误表明它找不到带有签名的函数""public: unsigned int __thiscall MyClass::myFunction<unsigned int>(int)const "
。
但是,移动 to 的内容是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;
}
我能做些什么来解决这个问题?