【发布时间】:2009-11-28 15:26:24
【问题描述】:
以下内容基于我在this thread 上发布的代码。除了明显的错误,我得到以下编译错误?知道为什么吗?
奇怪的是,这只发生在模板类中。如果我将另一个非模板类添加到模板类的同一个 .h 和 .cpp 文件中并尝试仅实例化非模板类,则不会生成错误。
场景A:
我收到以下代码的编译错误“error C2659: '=': 重载函数作为左操作数”:
StdVector<int> a();
StdVector<int> b();
a = b;
场景 B:
我得到编译错误“ error C2664: '__thiscall StdVector::StdVector(const class StdVector &)' : cannot convert parameter 1 from 'class StdVector (__cdecl *)(void)' to 'const class StdVector &'" 用于以下代码:
StdVector<int> a();
StdVector<int> b(a);
场景 C:
我得到编译错误 "error LNK2001: unresolved external symbol "public: __thiscall StdVector::~StdVector(void)" (??1?$StdVector@H@@QAE@XZ) " 如下代码:
StdVector<int> a;
【问题讨论】:
标签: c++