【发布时间】:2017-11-28 15:07:43
【问题描述】:
我正在编写一些玩具程序来尝试各种 C++ 关键字的功能。我已经声明了一个嵌套在另一个匿名命名空间下的匿名命名空间,并且两个命名空间(嵌套和嵌套)都定义了一个变量 i,如下所示:
namespace {
int i = 80;
namespace {
int i = 90;
}
}
我可以使用::i访问顶级命名空间下定义的变量i,但是如何访问嵌套命名空间下定义的变量i?
【问题讨论】:
-
匿名命名空间(通常)隐含地是
inlined。在这些命名空间范围之外,您将在 翻译单元 中看到两个这样的名称i- 如果没有 限定名称,您甚至无法使用名称i-查找。不幸的是,您不知道内部i所属的命名空间的唯一 name。所以,你不能。
标签: c++ namespaces