关于枚举的在代码中,代码如下:
#include<iostream>
#include<string>
using namespace std;
enum spectrum
{
//默认从0开始,即red=0,orange=1
//但可以进行赋值且指定的值必须为整数
red,
orange,
yellow,
green,//依旧是3
blue=100,//此处开始从100开始加1
violet,
indigo,
ultraviolet
}band3;//在此定义一个变量
int main()
{
cout << "red= "<<red << endl;
cout << "blue= "<<blue << endl;
cout << "violet= "<<violet << endl;
//定义一个变量进行使用
spectrum band1,band2;
band1 = blue;//正确
不能将 "int" 类型的值分配到 "spectrum" 类型的实体
//band2 = 3;//不可以将值赋给他,错误
//band2 = orange + red;//依旧错误
band1 = spectrum(INT_MAX+1);//超过整型的范围,大小会重置
band2 = spectrum(3);//但可以进行强制类型转换
//枚举类型上的此操作需要适用于用户定义的运算符函数
//没有位枚举定义运算符+,不可以进行算术运算
//++band1;
int color = blue;//正确
color = 3 + red;//正确
cout << "color的值是:" << color << endl;
cout << "INT_MAX= " << INT_MIN << endl;
cout << "band1= " << band1 << endl;//值进行了重置,值等于INT_MIN
cout << "band2= " << band2 << endl;
cout << "band3= " << band3 << endl;//打印为0
return 0;
}
结果如下: