- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C中的对象和设计类
主要内容 如何发现对象 类的设计和访问控制权限(重点) 成员函数的实现(重点、难点) 对象的定义和成员函数的调用(重点) 引用(reference) C++引入“引用”的目的 指针存在着相当大的安全隐患 引用,即变量的别名 引用的声明格式 类型 引用名 = 变量名; int a = 10; int ra = a; 声明引用时,必须对其进行初始化 什么是函数重载 具有相似功能的不同函数使用同一函数名,但这些同名函数的参数类型、参数个数、返回值类型、函数功能可以不同 编译系统根据参数的类型和个数来判断实际调用时该调用哪个函数 函数重载是C++对多态性的一个体现 如果只是函数返回值类型不同,无法让编译其确定调用哪个函数 内联函数 内联函数是一种以空间效率换取时间效率的机制 内联函数的显式定义格式为: inline 函数返回值类型 函数名 (参数表) { 函数体 } 在类中定义成员函数的实现部分,则该成员函数即使没有关键字inline,也默认为是内联函数 几点说明 内联函数一般只有1~5条语句的函数 内联函数体内不能有复杂的控制语句(swith、while、for等等) 递归函数不能定义为内联函数 内联函数只能先定义后使用 带默认值的参数 默认参数一般在函数声明中提供 默认参数必须放在参数表的最后 默认参数的声明必须出现在函数调用之前 面向对象程序设计热身 设计一个时间类Time,从键盘输入具体时间,分别以12小时制和24小时制输出至屏幕 要求:时间输出格式为09:01:01 分析: 先设计出Time类,思考Time应包含哪些属性、哪些方法?注意思考哪些信息该隐藏,哪些接口该暴露 定义Time类的对象完成题目要求的功能 找出我们所关心的对象特征 属性: 小时、分、秒 行为: 接受键盘输入的数据、以12小时制输出时间、以24小时制输出时间 对象总是通过类来描述 类是用户自定义的数据类型,可看做为制造对象而存在的蓝图 对象可看着根据蓝图做出的事物 抽象性 可以将“时间”这一客观事物抽象为 属性一般映射为程序世界中的变量, 行为一般映射为方法(函数) 封装性 通常情况下,对象内部重要的、隐私的数据不能被外界直接访问 外界通过对象提供的“接口”实现对对象的访问 封装的主要目的在于暴露外界需要知道的接口,隐藏对象内部的具体信息 所有对对象私有数据的访问应通过接口进行 类的访问控制权限 类的访问控制权限有3种:public、private、protected 需要暴露给用户的接口,我们称这类成员为公有成员,其访问权限为public 对象内部重要的、隐私的数据不能被外界直接访问,我们称这类成员为私有成员,而外界对其访问权限则为private protected权限指除了本类和其派生类成员,外界无法访问拥有protected权限的类成员 类的定义 定义格式: class 类名 { public: 成员函数或数据成员的声明 private: 数据成员或成员函数的声明 protected: 数据成员或成员函数的声明 }; 各成员函数的定义 设计时间类 //以行为为中心的设计方式 class Time { public: //设置hour, minute second void setTime( int = 0, int = 0, int = 0 ); void printUniversal(); //以24小时制输出 void printStandard(); //以12小时制输出 private: int hour; // 0 - 23 int minute; // 0 - 59 int second; // 0 - 59 }; 几点说明 类名首字母应大写,类成员命名方式采用驼峰匹配原则 类名和成员函数名应具有实际意义、贴切 通常情况下,进行类的定义时,应将公有成员写在类体的最前面,私有成员写在类的最后面 当私有成员放在类中最前面声明时,可以省略关键字private。 在类中不允许对所定义的数据成员进行初始化。 其他类的对象可以作为类的成员,但是自身类的对象不能作为该类的成员,自身类的指针或引用可以作为类成员。 在没有明确定义类的访问权限时,结构体的所有成员都是公有的,类的成员是私有的。 成员函数的实现 成员函数的实现分为两种: 类中实现:在类体中实现,即{ }内 类外实现:在类体外实现 类中实现成员函数时,无需关键字inline,函数自动成为内联
您可能关注的文档
- 2008年普通高等学校招生全国统一考试北京卷文科综合能力测试.doc
- 2009年全国高考文科数学真题(含答案)-湖北卷.doc
- 2009年全国高考英语真题(含答案)-江西卷.doc
- 2009年大白县妇女发展状况报告.doc
- 2009年度镇江市辖市_区党政领导干部科技与人才工作目标责任制考核表.doc
- 2009年~2010年第1学期《excel在资产评估中的运用》.doc
- 2010-2011初三政治复习纲要.ppt
- 2010-2011学年上学期九年级期末调研物理试题及答案.doc
- 2010安徽合肥.doc
- 2010年《会计基础》模拟试题含全部答案一.doc
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江西省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年安徽省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年福建省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年广东省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年河南省高考英语试卷(含答案解析)+听力音频.docx
- 2024年湖北省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年湖南省高考英语试卷(含答案解析)+听力音频+听力原文.docx
- 2024年江苏省高考英语试卷(含答案解析)+听力音频+听力原文.docx
最近下载
- 贵州省贵阳市普通中学2021-2022学年高一上学期信息技术期末监测考试试卷.docx VIP
- PCB镀铜针孔专案改善报告.ppt
- 体表肿块切除操作评分标准.doc
- (苏教版)数学二年级上册寒假作业计算题“天天练”,含30份题组,附参考答案.doc
- 2023年福建考评员考试答案.docx VIP
- 第二单元跨学科实践活动1微型空气质量“检测站”的组装与使用课件-九年级化学人教版(2024)上册.pptx
- 数学核心素养在小学教育中的具体应用教学研究课题报告.docx
- 人防工程战时给排水设备安装深度及注意问题.pptx
- 上海交通大学《社会心理学》内部题库练习期末真题汇编及答案.pdf
- 《工程制图及 CAD》课程思政教学案例(一等奖).docx
文档评论(0)