C++ 枚举类型
默认地,第一个枚举成员赋值为0,后面的每个枚举成员赋的值比前面的大1。
枚举成员是常量
用来初始化枚举成员的值必须是一个常量表达式。(常量表达式是编译器在编译时就能计算出结果的整形表达式);整形字面值常量是常量表达式,正如一个通过常量表达式自我初始化const对象也是常量表达式一样。
枚举成员值可以是不唯一的。
不能改变枚举成员的值。枚举成员本身就是一个常量表达式,所以可用于需要常量表达式的任何地方。
每个enum都定义一种唯一的类型
和其他类型一样,可以定义和初始化Points类型的对象,也可以以不同的方式使用这些对象。枚举类型的对象初始化或赋值,只能通过其枚举成员或同一枚举类型的其他对象来进行。
——参见《C++ primer》