C++之枚举类型enum

某些数据只有有限的几种可能值,虽然可以用int、char等类型来表示它们,但是对数据的合法性检查却是一件很麻烦的事。比如,如果用整数0~6代表一星期的7天,那么变量8便是不合法的数据。枚举就是专门用来解决这种问题的。

将需要的变量值一一列出来,便构成了一个枚举类型。

声明形式:

enum 枚举类型名  {变量值列表};

例如:

enum weekday {sun, mon, tue, wed, thu, fri, sat};
枚举类型应用说明:

1、对枚举类型按常量处理,不能对它们赋值,例如:

sun = 0;//sun是枚举类型,此语句非法
2、枚举类型具有默认值,它们依次是0,1,2,...例如上例中的sun为0,mon为1,sat为6

3、也可以在声明时另行定义枚举元素的值,如:

enum weekday {sun = 7, mon = 1, tue, wed, thu, fri, sat};//定义sun为7,mon为1,以后顺序加1,sat为6

4、枚举成员值可以不唯一

enum points {point2d = 2, point2w, pointed = 3, point3w};
上例中point2d显式初始化为2,point2w默认初始化,为3. point3d 显式初始化为3,point3w默认初始化为4.

4、枚举值可以进行关系运算

5、整数值不能直接赋给枚举变量,如有需要,应进行强制类型转换。枚举类型的变量的初始化或赋值只能通过其枚举成员或者同一枚举类型的其他对象来进行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值