【C++】《C++ 17 入门经典》读书笔记 03----枚举数据类型

一、枚举数据类型:

有时需要使变量具有限定的一组值,并可以通过名称来引用这些值。枚举就提供了这个功能。

在定义枚举时,实际上是在创建一个新的类型,所以它也称为枚举数据类型。

二、示例说明:

enum class Day {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

这条语句定义了枚举类型 Day, 这个类型的变量值只能是花括号中的值。如果把Day类型的变更值设置为不在花括号中的值,代码就不能编译。

花括号中的符号名称称为枚举成员。

默认情况下,每个枚举成员都自动定义为一个 int 类型的固定数值。

列表中的第一个名称是 Monday,值为 0,Tuesday 的值为1,依此类推, Sunday 的值为 6。

默认情况下,每个枚举成员的值都比前面一个枚举成员的值大 1, 第一个枚举成员的值默认是 0。

赋予枚举的隐式值也可以从另一个整数值开始。

下面的语句使得 Day 枚举成员的值为 1~7:

enum class Day {Monday = 1, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

Monday 被显式指定为1, 后续枚举成员都比前一个枚举成员大1。

可以为枚举成员赋任何整数值,并且并不是只能对前几个枚举成员赋值。

例如:下面的定义使工作日的数值为 3~7,Saturday 的值为1, Sunday 的值为 2:

enum class Day {Monday = 3, Tuesday, Wednesday, Thursday, Friday, Saturday = 1, Sunday};

枚举成员不一定有唯一值。

enum class Day {Monday = 1, Mon = 1, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

可以根据以前的枚举成员定义新的枚举成员值。

枚举成员可以是包含默认类型 int 在内的任何整数类型。也可以给所有的枚举成员显式赋值。

如果给枚举类型使用 enum class ,代码就不容易出错。强类型的 enum class 是比旧式的 enum 类型更好的选择。

 


 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Visual C++编程宝典(十年典藏版) 明日科技 源代码 解压后287M 《Visual C++编程宝典(十年典藏版)》是一本集技能、范例、项目和应用为一体的学习手册,书中介绍了应用Visual C++ 6.0进行程序开发的各种技术、技巧。全书分4篇,共22章内容,其中,第1篇为技能学习篇,主要包括Visual C++集成开发环境,走进C++语言基础,运算符与表达式的应用,流程控制语句,函数的使用,面向对象程序设计,全面了解对话框,工具箱中的常用控件,高级控件,菜单、工具栏和状态栏,程序中的数据库操作,程序调试等内容;第2篇为范例演练篇,主要包括生活中的算法、工作中的小工具、编程中的好帮手、图像相关工具、小游戏开发等相关范例;第3篇为项目实战篇,主要包括通信新干线、使用指纹来考勤、上机课终的屏幕监控专家、让计算机听懂声音等4个小型项目;第4篇为商业系统篇,主要包括一个大型的商业项目,即企业内部通信系统。《Visual C++编程宝典(十年典藏版)》附有配套DVD光盘,光盘中提供了书中全部实例和项目的源代码,这些源代码全部经过精心调试,能够在Windows XP、Windows Server 2003以及Windows 7操作系统下编译和运行。《Visual C++编程宝典(十年典藏版)》适用于Visual C++的初学者、编程爱好者,同时也可以作为培训机构、大中专院校老师和学生的学习参考用书。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值