C++的枚举类

语法:

enum class 枚举类名 [: 底层类型] {
    枚举值1,
    枚举值2,
    ...
};

一般形式(当然我们一般默认成员都显转int,因此底层类型一般不写)

C++的枚举类:

在C++中,enum class是一种类型安全的枚举类型,它比传统的enum类型提供了更好的作用域控制和类型安全性。使用enum class可以避免枚举值之间的隐式转换,这在传统的enum类型中是一个常见问题。

特性

说明

作用域隔离

枚举值只能通过 枚举类名::值 访问

类型安全

不允许隐式转换为 int

可指定底层类型

可控制枚举值的存储大小

可读性高

代码结构清晰,易于维护

枚举元素的值取决于定义时各枚举元素排列的先后顺序。默认情况下,第一 个枚举元素的值为 0,第二个为 1,依次顺序加 1

由于 enum class 不允许隐式转换,必须显式转换。

enum class Gender
{
    MAN,
    WOMAN,
    UNKNOW
};

Gender gender = Gender::MAN;  // 使用的时候要加作用域

 

posted @ 2025-09-17 14:58  PKICA  阅读(16)  评论(0)    收藏  举报