我意识到以前有人问过类似的问题,但我读了其中的几个,但仍然看不出我哪里出错了。当我简单地编写我的类而不将原型与定义分开时,一切正常。当我将原型和定义分开时会出现问题,如下所示:
template<class T> class VisitedSet {
public:
VisitedSet();
int getSize();
void addSolution(const T& soln);
void evaluate();
private:
vector<T> vec;
int iteration;
};
作为给我这个错误的定义的一个例子:
int VisitedSet::getSize() {
return vec.size();
我以前从未做过模板类,所以如果这里的问题是微不足道的,请原谅我。