我遇到此链接器错误,但遇到一些麻烦。
Util.h
文件定义:
template <class ObjectClass>
static rf<ObjectClass> getClosestToGlobal(
std::vector<rf<ObjectClass> > objects, Eigen::Vector3d targetPosGlobal);
Util.cpp
定义:template <class ObjectClass>
rf<ObjectClass> Util::getClosestToGlobal(
std::vector<rf<ObjectClass> > objects, Eigen::Vector3d targetPosGlobal)
{
// ...
}
我知道我的cpp文件已成功编译,因为它可以按预期重新创建.o文件。
我是否在这里提供了足够的信息,以便有经验的人来确定问题?如果没有,我应该在哪里找?
最佳答案
您需要在声明模板函数的头文件中定义它。
关于c++ - 模板方法上的gcc链接错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10572093/