📜  C++中的枚举类型或枚举(1)

📅  最后修改于: 2023-12-03 15:14:03.738000             🧑  作者: Mango

C++中的枚举类型或枚举

枚举类型是一种用户自定义的数据类型,它只能取枚举中列举出来的值。在C++中,枚举类型允许我们为一组有限的值分配名称。每个名称都对应一个固定的整数值,可以把名称看作常量。

定义枚举类型

枚举类型使用 enum 关键字定义,格式如下:

enum 枚举类型名 {
    枚举值1,
    枚举值2,
    ...,
    枚举值n
};

其中,每个枚举值都可以用默认值指定,如果没有指定,默认从0开始,每个枚举值的值依次递增1。例如:

enum Color {
    RED,       // 默认值为0
    YELLOW,    // 默认值为1
    BLUE       // 默认值为2
};

也可以手动指定枚举值的值,例如:

enum Color {
    RED = 10,
    YELLOW = 20,
    BLUE = 30
};
使用枚举类型

定义枚举类型后,可以使用枚举值来定义变量。例如:

enum Color {
    RED,
    YELLOW,
    BLUE
};

Color color1 = RED;
Color color2 = YELLOW;

枚举值可以使用 . 操作符访问。例如:

enum Color {
    RED,
    YELLOW,
    BLUE
};

Color color = BLUE;
if (color == Color::BLUE) {
    cout << "This is blue." << endl;
}
枚举类型的好处

使用枚举类型比使用常量更为可读、可维护。例如:

// 使用枚举类型
enum Weekday {
    MONDAY,
    TUESDAY,
    WEDNESDAY,
    THURSDAY,
    FRIDAY,
    SATURDAY,
    SUNDAY
};

Weekday day = SUNDAY;

// 使用常量
const int MONDAY = 0;
const int TUESDAY = 1;
const int WEDNESDAY = 2;
const int THURSDAY = 3;
const int FRIDAY = 4;
const int SATURDAY = 5;
const int SUNDAY = 6;

int day = SUNDAY;

使用枚举类型更为直观,防止出现拼写错误或混淆。当需要增加或修改枚举值时,只需要在枚举类型中增加或修改相应值,而不需要在程序中进行修改。

总结

枚举类型是一种方便可读、可维护的数据类型,在编写程序时可以用来代替常量。使用枚举类型能够提高代码的可读性,减少拼写错误和混淆,更容易维护。