为什么使用范围解析运算符可以访问枚举?

nit*_*112 1 c++ enums

#include <iostream>

using namespace std;

class Sample{
public:
   enum{ x = 10 };
};

int main(){
   cout<<Sample::x<<endl;
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么在主函数中使用范围解析运算符可以访问类中枚举的x?

Set*_*gie 7

我假设您在问为什么不必实例化Sample访问权限x.原因是enums类似于typedefs:它们创建一个新类型,它们不创建变量.您可以访问类中Sample::x访问a typedefstruct/ class声明的相同方式.