enum 枚举的定义
C++的enum
工具提供了另外一种创建符号常量的方式,这种方法可以替代const
,它还允许定义新的类型,但必须按照严格得限制进行。使用enum
的句法与使用结构体类似
先摆上一个例子
enum spectrum{red, orange, yel1ow, green, blue,violet,indigo,ultraviolet} ;
spectrum band;//定义一个新的spectrum类型的变量
band=blue;//合理的赋值,因为blue在变量spectrum中
band=wang;//不合理的赋值,因为wang不在变量spectrum中
通过上面例子我们知道,用enum定义了一个新的变量类型,它的取值只能在enum
声明的范围内取,如果超出了就报错。
设置枚举量的值
可以使用赋值运算来显示地设置枚举量的值
enum bits{ one=1,two = 2,four=4,eight=8};
指定的数必定是整数,也可以只显式地定义其中一些枚举量的值,这里first在默认情况下为0,后面没初始化的枚举量的值默认比前面的大1,比如这里third=101
enum bigstep{first,second=100,third}
最后,可以创建多个值相同的枚举量,其中zero
和null
都为0,one
和numero_uno
都为1,而且甚至可以把long
double
的值赋值给枚举量。
enum{zero,null=0,one,numero_uno=1};
枚举的取值范围
未完待续……