enum

href="file:///C:/DOCUME~1/chendx/LOCALS~1/Temp/msohtml1/01/clip_filelist.xml" rel="File-List" />

顾名思义,enum就是enumerate的缩写,在C++中表示所修饰的复合结构是一个枚举类型的结构。

       enumC++中是一种创建符号常量的方法。例如

enum myestruct{red,blue,green}

这个枚举类型中的red=0blue=1green=2,它们更像预定义中的符号常量,当然,也有点类似于const。不过与const不同的是,const是可以取到地址的,而枚举中的符号常量则不行,这也可以看作是安全性上的加强吧。

       值得注意的是enum类型中符号常量的运算和取值范围。

Ø         enum可以在定义时被赋予int值或是long值。

Ø         enum若是不赋初值,则默认从0开始,依次递增1

Ø         enum在定义时可以给不同的符号常量赋予相同的值,也可以给任意常量赋予任何 值,该常量之后的符号常量值依次递增1。如若是

enum myestruct{red,blue=100,green}

red0green101.

Ø         enum的取值范围。一个enum的最大取值是大于当前enum中的最大值的,最小的2的次方减1。而当enum的最小值大于0时,最小取值就是0;若是小于0时,求得过程同最大取值的求取过程。

enum 中的符号常量只能进行符号常量间的赋值运算,如red=blue,且不能被赋予普通的数值,如red=1是错误的。但是可以通过强制转换来使得这样的赋值成立,前提是赋予的值在该enum的取值范围中,如red=myestruct(2)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值