enum:底层类型可以是int、unsigned int、char等整数类型,默认情况下是int。 enum class:底层类型可以是任何整数类型,包括枚举类本身不具备的类型(例如long、unsigned long long等)。 4. 枚举值的访问: enum:枚举值可以直接使用枚举值的名称。 enum class:枚举值需要通过作用域解析运算符::来访
编译错误的原因在于Sex与Student都处在同一作用域下,成员变量重定义。 这便体现C++11引入枚举类(enum class)的重要性,enum class能够有效对枚举作用域进行限定,避免了枚举成员的重定义。 enum class Sex { Girl, Boy }; enum class Student { Girl, Boy }; int main(int argc, char *argv[]) { Sex a =...
上面的标准已经说得很清楚了,只要能够容纳最大的枚举子的值的整数就可以了,那么就是说可以是char、short和int。 例如: enum EType1 { e1 = CHAR_MAX }; enum EType2 { e2 = SHRT_MAX }; enum EType3 { e3 = INT_MAX }; 上面的三个枚举类型分别可以用char、short、int的内存空间进行表示,也就是:...
标识符的基础类型。它可以是任何数据类型,如 int 签名的或未签名的版本,短或 long。bool 或 char 还允许。 var(可选) 枚举类型的变量的名称。 备注 enum class和enum struct等效的说明。 具有枚举的两种类型:管理和条件。 托管枚举可能如下定义, enum class day {sun, mon }; ...
enum:底层类型可以是 int、unsigned int、char 等整数类型,默认情况下是 int。 enum class:底层类型可以是任何整数类型,包括枚举类本身不具备的类型(例如 long、unsigned long long 等)。 4. 枚举值的访问: enum:枚举值可以直接使用枚举值的名称。 enum class:枚举值需要通过作用域解析运算符 :: 来访问,例如 E...
枚举类的底层数据必须是有符号或无符号整型,比如 char unsigned int unsigned long,默认为 int。 3.前置声明应用 enmu class Clolor:char; //前置声明枚举类 void Foo(Color*p); //前置声明的使用 //... enum class Color:char{RED,GREEN,BLACK,WHITE}; //前置声明的定义 参考:http://blog.csdn.net...
而标准规定,enum class 默认的底层数据类型是 int,也可以自己手动指定数据类型,语法如下, 代码语言:javascript 代码运行次数:0 运行 AI代码解释 enum class color:unsigned char {red, blue}; enum class color:long long {yellow, black}; 参考 C++11 的 enum class & enum struct & enum 本文参与 腾讯云自媒...
enum class Color; 1) 新增枚举成员 enum 在声明时,编译器会选择占用内存最小的一种潜在类型 (underlying types),来代表每一个枚举成员 // compiler may choose char type enum Color { black, white, red }; 下例中,编译器可能会选择更大的能包含 0 ~ 0xFFFFFFFF 范围的潜在类型 enum Status { goo...
JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。 enum Color{ RED, GREEN, BLUE, BLACK, PINK, WHITE; } public class TestEnum { public void changeColor(){ Color color = Color.RED; System.out.println("原色:" + color); ...
enum class intTypes { charTyp = 8, shortTyp = 16, intTyp = 16, longTyp = 32, long_longTyp = 64 }; 1. 2. 3. 4. 枚举成员是const的,因此在初始化枚举成员时提供的初始值必须是常量表达式。也就是说,每个枚举成员本身就是一条常量表达式,我们可以在任何需要常量表达式的地方使用枚举成员。例如,...