0
如果可能,我希望在返回模板类的类中有一个函数,其中类和类模板值是模板参数。例如,成员函数的模板类和类型返回类型
class AClass
{
public:
template<typename ClassType, typename ClassTemplateType>
ClassType<ClassTemplateType>* TestFunction() { return NULL; }
};
但是,如果我这样做,我会得到错误,如
错误C2988:无法识别的模板声明/定义
错误C2059:语法错误: '<'
错误C2143:语法错误:缺少';'在'}'之前
错误C2238:在';'之前的意外标记(s)
是否有可能按照我提供的来做一些事情?如果是这样,怎么会这样?如果不是,为什么不,还有什么可以提出的其他建议?
为什么'类ClassType'而不是'模板ClassType'? – judeclarke 2012-04-24 02:05:23
@judeclarke语法是'template [class或typename] [模板名称]>',这是'template ClassType>'在我们的例子中。 – 2012-04-24 02:07:03
不正确 - 对于模板类型参数,可以使用'class'或'typename',但对于模板模板参数,只允许'class'。 – ildjarn 2012-04-24 02:15:26