枚举(enum)
枚举C++的枚举工具提供了另一种创建符号常量的方式,这种方式可以代替const。还允许定义新类型,但必须按严格的限制执行。使用enum的句法与struct类似。
enum color { red, orange, blue, green, red, black}
这条语句定义了一个名为color的新类型,它的取值范围为red, orange, blue, green, red, black,称为符号常量,同时将0~5分别对应于red~black。在默认情况下,0对应的是red,5对应的是black,其他以此类推。
声明与使用1234color cor1; //定义了一个类型为color的变量cor1//枚举变量的赋值cor1 = red; //正常赋值cor1 = 20; //非法,20不是枚举变量
由此可以看出,枚举变量的赋值受到限制,与程序员的定义有关。
对枚举而言,它的操作符只有赋值运算符=,这就意味着枚举变量不能执行++、--、+、—等等号以外的操作。
枚举量是整形,可被提升为int类型,但int类型不能自动转换为枚举类型
枚举可以进行强制类型转换,但 ...