📜  c++ enum - C++ (1)

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

C++中的枚举(enum)

在C++中,枚举(enumeration)是一种用户自定义数据类型,它由一组有限的枚举常量所组成。枚举常量是一些命名的整数常量,用于表示特定的值。使用枚举可以使代码更加清晰、易读。

定义枚举

定义枚举的语法如下:

enum enumeration_name { const1, const2, ..., constN };

其中,enum是关键字,enumeration_name是用户定义的枚举类型的名称,const1constN是枚举常量。

例如,我们可以定义一个枚举类型表示一周的每一天:

enum weekdays { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday };

在这个枚举中,Monday被赋值为0,Tuesday被赋值为1,以此类推。

使用枚举

我们可以使用枚举类型来定义变量:

weekdays today = Tuesday;

也可以直接使用枚举常量:

cout << Wednesday << endl;

输出结果为2,即Wednesday的值。

枚举类型的默认值

如果使用默认情况下枚举类型中的枚举常量,则它们的值将从0开始自动增长。例如,在下面的枚举中:

enum color { red, green, blue };

red被赋值为0,green被赋值为1,blue被赋值为2。

我们还可以为枚举类型中的枚举常量指定值:

enum color { red = 1, green = 2, blue = 4 };

这里,red的值为1,green的值为2,blue的值为4。

示例代码

下面是一个使用枚举的示例程序:

#include <iostream>
using namespace std;

enum weekdays { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday };

int main() {
    weekdays today = Tuesday;
    cout << "Today is " << today << endl;

    cout << "Tomorrow is " << (today + 1) << endl;

    return 0;
}

输出结果为:

Today is 1
Tomorrow is 2
总结

枚举是一种用户自定义的数据类型,用于表示特定的值。枚举常量是一些命名的整数常量,它们的值可以被指定或隐式地从0开始自动增长。使用枚举可以使代码更加清晰、易读。