类替代中的命名空间别名

时间:2018-09-04 11:12:44

标签: c++ namespaces refactoring alias using

您知道是否可以在类内部模拟一种名称空间别名?我知道您不能在类内部声明名称空间,但是还有其他选择吗?

我举一个例子:

namespace NamespaceA
    {
    typedef int Type;
    enum : int
      {
      NONE,
      A,
      B,
      C
     };
    }

  namespace NamespaceB = NamespaceA; // Ok
  struct Test
    {
    namespace NamespaceC = NamespaceA; // Compile time error

    void f()
      {
      NamespaceC::Type makeMeWork = NamespaceC::A;
      }
    };

由于其他一些限制,我不想使用枚举类。

谢谢!

0 个答案:

没有答案