使用类中定义的类型

时间:2013-11-28 21:12:41

标签: c++ class types

定义一些复杂类中声明的类型变量的最方便,最明确的方法是什么。例如:

template<class T1, class T2> 
class ClassA
{
    enum ENUM_A { A1, A2 };
    //constructor
    ClassA(const ENUM_A& x);
}

然后当你想在其他地方使用这个对象时,你必须编写长类型定义,如:

ClassA<ClassT1, ClassT2>::ENUM_A var = ClassA<ClassT1, ClassT2>::A1;
ClassA<ClassT1, ClassT2> obj(var);

有没有安全便捷的方法来避免这么长的声明? (我考虑过typedef,但也许就是这样)

1 个答案:

答案 0 :(得分:1)

已将解决方案命名为:typedef(或using)和auto以完全跳过命名类型。