小编Ran*_*agg的帖子

为什么我们不能在类中声明命名空间别名?

看起来在类中声明命名空间别名是不可能的; 但是我们可以在功能级别这样做(用g ++ 4.3.4测试):

namespace A
{
}

class C
{
  namespace N = A; // error: expected unqualified-id before `namespace'
};

class D
{
  void f();
};

void D::f()
{
  namespace N = A; // OK
}
Run Code Online (Sandbox Code Playgroud)

知道为什么存在这样的限制吗?这似乎与可以在类中声明的typedef非常一致.

c++ namespaces

14
推荐指数
2
解决办法
3653
查看次数

标签 统计

c++ ×1

namespaces ×1