7、C++枚举类型

7、枚举类型

  C++的enum工具提供了另一种创建符号常量的方式,这种方式可以代替const。它还允许定义新类型,但必须按严格的限制进行。使用enum的语法与使用结构的相似。

enum spectrum {red,orange,yellow,green,blue,violet,indigo,ultraviolet};

  这条语句完成两项工作:

     让spectrum成为新类型的名称:spectrum别称为枚举(enumeration),就像struct变量别称为结构体一样。

        将red、orange、yellow等作为符号常量,它们对应数值0~7.这些常量叫做枚举量(enumerator)

在默认情况下,将整数数值赋值给枚举量,第一个枚举量的值为0,第二个枚举量的值为1,以此类推。可以通过显示的指定整数值来覆盖默认值。

enum spectrum {red,orange,yellow,green,blue,violet,indigo,ultraviolet};
spectrum band;
band = blue;   //有效的 blue是一个枚举值
band = 2000;  //无效的,2000不是一个枚举值

  

 

7.1、设置枚举量的值

  可以使用赋值运算符来显示的设置枚举量的值:

enum bits{one = 1,tow = 2,four = 4,eight = 8};
//指定的值必学是整数,也可以只显式地定义其中一些枚举量的值:
enum bigstep{first,second = 100,third};
//这里,first在默认情况下为0.后面没有被初始化的枚举量的值将比其前面的枚举
//量大1因此third的值为101.
//最后可以创建多个值相同的枚举量
enum {zero,null = 0,noe , numero_uno = 1};

  

 

    

 

posted @ 2018-05-25 16:25  田湾第一帅  阅读(179)  评论(0编辑  收藏  举报