我有一个如下所示的类:
template<typename T>
class Set{
public:
bool contains(const T& e) const;
};
当我将这个类的成员变成另一个类时:
class Dfa {
private:
Set<string> F;
public:
bool accepts() const
{
string temp;
return F.contains(temp);
}
};
嗯,这些只是实际类的一些函数和函数语句。谁能告诉我为什么会出现错误:
[Linker error] undefined reference to `Set<std::string>::contains(std::string const&) const'
当我编译它时,我该如何修复这个错误。谢谢
最佳答案
那么,您应该实现模板类 Set
的函数 contains()
。
请记住,模板函数必须内联定义,因此您希望将定义放在同一个头文件中。
关于c++ - [链接器错误] 未定义对 `Set<std::string>::contains(std::string const&) const' 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9214864/