我有一个定义如下的模板类:
template <class T1, class T2>
class MyClass { };
在这个类中,我需要一个包含一个 T1 类型成员的结构。我该怎么做?
我尝试了以下方法,但没有用:
template <class T1, class T2>
class MyClass {
typedef struct {
T1 templateMember;
// rest of members
} myStruct;
// rest of class definition
};
编辑:根据要求,我使用 VS2008 并收到以下错误:
'MyClass<T1,T2>::myStruct' uses undefined class 'T1'
最佳答案
只需删除 typedef:
template <class T1, class T2>
class MyClass {
struct myStruct{
T1 templateMember;
// rest of members
} ;
};
关于c++ - 模板和结构的混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1293951/