C++ 调用基类的模板函数
从派生类中的函数中,我尝试以下操作:C++ 调用基类的模板函数,c++,templates,linker,C++,Templates,Linker,从派生类中的函数中,我尝试以下操作: class Derived: public Base { private: class DerivedPrivateClass { public: explicit DerivedPrivateClass(int **p): m_objDerived(poParam) {} private: int** m_objDerived; }; }; 我得到一个多定义符号的链
class Derived: public Base
{
private:
class DerivedPrivateClass
{
public:
explicit DerivedPrivateClass(int **p): m_objDerived(poParam)
{}
private:
int** m_objDerived;
};
};
我得到一个多定义符号的链接器错误-符号在基类和派生类中都定义
我不知道链接器错误的原因。有人能帮忙吗?如我所说。。有点难读。。但从外观上看,一个主要问题是您尝试使用的MvprocessAnimParams函数在Base中是私有的,因此Dervied无法访问它。链接器错误是什么?@Alon:符号是多重定义的。基类的许多函数/变量都存在于基类和派生类的对象文件中;在课程结束时,我在代码中有它…我在这里构建问题时错过了它…抱歉…将编辑并放置它们…我将尝试发布一个简化的问题,也许创建一个示例,而不是,代码中有什么错误。。
class Derived: public Base
{
private:
class DerivedPrivateClass
{
public:
explicit DerivedPrivateClass(int **p): m_objDerived(poParam)
{}
private:
int** m_objDerived;
};
};
DerivedPrivateClass obj(param);
this->m_vProcess(obj);