#include <stdio.h>
#include <cstdlib>
int main()
{
enum color{red,blue,green};
color myColorRed=color::red;
color myColorBlue=color::blue;
color myColorGreen=color::green;
printf("%d\n%d\n%d\n",myColorRed,myColorBlue,myColorGreen);
system("pause");
return 0;
}
运行结果:
(图片点击可放大)
可以看到enum常量实际上是int类型。我们设定的red,blue,green分别对应着0,1,2
那么我们为什么不直接使用0,1,2呢?
因为整数不具备自表达性,使用枚举的好处在于可以提高程序的可读性。
有一点需要注意的是enum常量一经定义之后它的值无法更改。
我们不能让green=10;
但是myColorGreen的值可以更改。当然了,仅限于在0,1,2的范围之内.