[英]Why can't I move my generic constructor into a .cpp file?
如果仅在头文件中执行此操作,则效果很好:
generic<typename T>
ref class MyGenericClass
{
protected:
T m_someInternalInformation;
public:
MyGenericClass(void)
{
}
};
...但是如果我将.h文件更改为如下所示:
generic<typename T>
ref class MyGenericClass
{
protected:
T m_someInternalInformation;
public:
MyGenericClass();
};
...以及一个.cpp文件,如下所示:
#include "MyGenericClass.h"
MyGenericClass::MyGenericClass(void)
{
}
我收到编译器错误:
1>MyGenericClass.cpp(4): error C2955: 'MyGenericClass' : use of class generic requires generic argument list
我尝试添加有关构造函数定义的通用定义:
#include "MyGenericClass.h"
generic<typename T>
MyGenericClass::MyGenericClass(void)
{
}
...但是我得到了同样的错误。 我在这里想念什么?
找到了答案:
generic<typename T>
MyGenericClass<T>::MyGenericClass(void)
{
}
注意::
之前的<T>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.