【发布时间】:2011-07-17 04:11:52
【问题描述】:
从模板类继承时遇到问题。
看起来像这样:
template<typename type>
class base {
protect:
...
public
...
virtual bool func1(type var1);
};
//这个类不是模板化的,而是从模板类派生的,不知道是不是问题
class derived : public base<type_spec_1> {
protected:
...
public:
...
bool func1(type_spec_1);// function I wish to override;
};
// 在 .cpp 中,我尝试限定函数的范围,它可以编译但没有链接
bool derived::func1(type_spec_1 type){ return false; };
链接器以这种格式给我一个错误:LNK2001, unresolved symbol base::func1(type_spec_1);
好像没看到"derived"==base"<type_type_1>"
如果可能的话,我怎样才能为此提供正确的语法????
【问题讨论】:
标签: class templates inheritance linker virtual