C++;在类中使用未定义的模板 最近我在C++中发现了智能预定义类的快捷方式。通常,我会写一些复杂的结构: class A; class B{ A *a; }; ... class A{ };

C++;在类中使用未定义的模板 最近我在C++中发现了智能预定义类的快捷方式。通常,我会写一些复杂的结构: class A; class B{ A *a; }; ... class A{ };,c++,templates,typedef,typename,C++,Templates,Typedef,Typename,现在,多亏了捷径,我写下: class B{ class A *a; }; class A{ }; 我的问题-我如何才能做出与此表格等效的简短定义: template<typename T> class A; class B{ typename typedef A<class T> a; }; A类模板; B类{ typename typedef A; }; 简单的答案是你不能。为常规类使用精心设计的类型说明符,通过隐式地向前声明将名称引入封闭的命

现在,多亏了捷径,我写下:

class B{
    class A *a;
};
class A{

};
我的问题-我如何才能做出与此表格等效的简短定义:

template<typename T> class A;
class B{
    typename typedef A<class T> a;
};
A类模板;
B类{
typename typedef A;
};

简单的答案是你不能。为常规类使用精心设计的类型说明符,通过隐式地向前声明将名称引入封闭的命名空间


“模板不是定义为相同的行为方式。< / P>嗯,我会等一个不知道你不能的人:”CheshireCat,你可以自由阅读C++标准。答案不会改变。