私有类的Typedef而不暴露它

时间:2016-09-22 15:30:06

标签: c++

当使用多个嵌套类时,拼写出完整的类名会变得不必要地冗长,typedef可以帮助公共类,但是当使用私有时,typedef无法访问该类。有没有办法在不使类可见的情况下使用typedef或类似的东西?

编辑:

示例:

classA.h

class Class_A {
    private:
      class Class_B;
  };

classB.h

class ClassA::Class_B {
    private:
      class Class_C;
      void func();
  };

classB.cpp

 void Class_A::Class_B::func(){
       // Do something
    };

无法执行以下操作以缩短名称:

typedef Class_A::Class_B td_classB;

1 个答案:

答案 0 :(得分:0)

  

无法执行以下操作以缩短名称:

typedef Class_A::Class_B td_classB;

你可以做任何旧地方都有意义。毕竟,Class_Bprivate嵌套类Class_A

您可以在任何有权访问班级private部分的类或函数中使用它。