枚举

枚举的句法和结构很相似,例如下面语句:

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

该语句具有两个作用:

  • 使spectrum 成为新类型的名称;
  • 使red、orange...等作为符号常量,它们对应的值分别为(0~7);

枚举具有的特殊语法特性:

  • 可以用枚举名声明枚举变量如:spectrum band ;
  • 在不进行强制转换的时候只有同一个枚举量之间可以进行赋值; 
band = blue ; // valid          
band = 2000 ; // invalid 
  • 并且对于枚举只定义了赋值运算符;
band = orange ;// valid
band++ ; // invalid 
band = orange + red ; // invalid 
  • 枚举量是整型,可被提升为int 类型,但int 不能转换为枚举(除强制转换以外);
int color = blue ; // valid 
band = 3 // invalid ,int not converted to spectrum
color = 3 + red ; // valid 
  • int可以通过强制转换,而变成枚举类型;
band = (spectrum) 3 ; 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值