N3290 ISO标准草案,§3.4.1/ 12:
在查找枚举器定义的常量表达式中使用的名称时,枚举的先前声明的枚举器是可见的并隐藏包含 enum-specifier 的块,类或命名空间范围中声明的实体的名称。
这是增加的新观点,任何人都可以通过一个例子来说明这一点(就例子而言)吗?
答案 0 :(得分:10)
让我们来看一些代码:
struct X {};
enum Foo
{
X = 0,
Y,
Z = X // X refers to the enum, not the type
};