- 1、本文档共66页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 枚举、结构与类 主要内容 枚举类型 结构类型 类类型与对象 面向过程程序设计与面向对象程序设计 1、简单数据类型 vs. 构造式数据类型 简单数据类型 又称基本数据类型,原子数据类型 这些类型的数据就是单一的一个值,不可再分 构造式数据类型 又称复合类型 这些类型的数据并非单一的一个值,而是由其内部各成分组成的、具有一定结构的数据 这些类型需要由程序员定义 2、枚举类型 内置类型的值域取决于计算机硬件及编译器实现 如:char类型的值域为-128~127;int类型(2字节)的值域为32768~32867 有时程序员需要具有自定义值域的类型 目的:增强代码可读性 如:表示一周中某天的数据类型,其值域可以是: { SUN, MON, TUE, WED, THU, FRI, SAT } 如:表示颜色的数据类型,其值域可以是: { RED, GREEN, BLUE} 实现:采用枚举类型 2、枚举类型(续) 枚举类型的定义 enum Day{SUN, MON, TUE, WED, THU, FRI, SAT}; enum Color{RED, GREEN, BLUE}; 2、枚举类型(续) 枚举类型变量的定义和使用 Day day1, day2; //定义变量day1和day2 day1 = WED; //Day常量WED赋值给Day变量day1 day2 = FRI; //Day常量FRI赋值给Day变量day2 day2 = day1; //Day变量day1赋值给Day变量day2 MON = SUN; //错误!MON是常量,不能被赋值 2、枚举类型(续) 枚举元素是命名常量还是字面常量? 从语法角度,可视为命名常量。枚举元素的机内表示为0,1,2…等整数值 从应用角度,可视为字面常量。如:SUN就是Day类型的字面常量 使用枚举类型的注意事项 可以用枚举类型的值给整型变量赋值(隐式类型转换),但不能将整型值直接赋给枚举型变量(需进行强制类型转换) 枚举型变量不能直接自增 day1++; × day1 = Day( day1 +1 ); ? 不能直接进行枚举型数据的输入和输出 3、结构类型 假设有如下表格: 若需要变量来记录某个学生的各项资料,可以定义如下5个变量,然后再分别对这些变量进行赋值: string stuNum; // 用来记录考生编号 string stuName; // 用来记录考生姓名 int score1; // 用来记录考生课程1成绩 int score2; // 用来记录考生课程2成绩 bool admit; // 用来记录考生的录取情况 3、结构类型(续) 3、结构类型(续) 结构类型的声明(定义) 3、结构类型(续) StudentRec stu1, stu2; //与一般变量的定义语句相同 3、结构类型(续) 3、结构类型(续) 结构变量的整体操作 赋值操作:结构变量可以整体赋值给相同类型的另一个变量 如:stu2 = stu1; //stu1和stu2均为StudentRec类型 3、结构类型(续) 结构变量的整体操作(续) 结构变量作函数参数 如:可用不带返回值的函 数完成一名学生资料的输入 结构变量作函数返回值 如:亦可带返回值的函数 完成一名学生资料的输入 注意:结构变量不能作为整体进行I/O、算术和比较操作 3、结构类型(续) 层次结构 一个结构类型的成员的类型是另一结构类型 3、结构类型(续) 层次结构变量的存储 StudentRec stu1; 3、结构类型(续) 3、结构类型(续) 4、抽象、封装与信息隐藏 抽象 现实生活中,我们经常会借助“抽象”来理解事物或解决问题 一种依赖于接口和实现分离的设计和编程技术 将对象的本质特征(what)与对象如何工作及如何构成的具体细节(how)相分离 4、抽象、封装与信息隐藏(续) 抽象(续) 数据抽象 将数据类型的逻辑特征与其实现相分离 只关心数据“是什么”(可能的取值,能进行的操作),而不关心它是如何实现的 被抽象的数据的数据类型称为抽象数据类型 行为抽象(控制抽象) 将行为的逻辑特征与其具体实现相分离 只关心行为能够为我们带来什么,而不关心这个行为的具体实现方法 例: search (list, item, length, where, found); 4、抽象、封装与信息隐藏(续) 抽象(续) 软件设计中经常会用到抽象。例如下面的计算就用到了抽象: y = sin(x) +
您可能关注的文档
最近下载
- 水池满水试验.docx
- 超声除藻的参数优化及其在太湖除藻中的应用-东南大学学报.pdf
- 四川省重点中医专科专病建设与验收标准.docx VIP
- 《广告策划》全套教学课件.pptx
- 化妆品专业英语:Makeup Service 化妆服务.pptx VIP
- 2025年山东省烟台市招远市中考一模语文试题(原卷版+解析版).docx VIP
- 6.5.2.2 平面与平面垂直的判定 (教学课件)-高一下学期数学北师大版(2019)必修第二册.pptx VIP
- 重难点02 方程与不等式(组)有关的含参问题(2种命题预测+17种题型汇总+专题训练)(原卷版).pdf
- 四川省重点中医专科(专病)建设及验收标准..docx VIP
- 化妆品专业英语:Facial Care 脸部护理.pptx VIP
文档评论(0)