- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C程序设计第八章类与对象
第8章 类与对象 教学内容 8.1 类和对象 8.2 构造函数和析构函数 8.3 对象数组和对象指针 8.4对象的动态建立和释放 8.1 类和对象 类是C++中十分重要的概念,它是实现面向对象程序设计的基础。类是所有面向对象语言的共同特征,所有面向对象的语言都提供了这种类型。一个有一定规模的C++程序是由许多类所构成的。 对象 = 算法 + 数据结构 程序 = (对象+对象+对象+…)+消息 或:程序 = 对象s + 消息 “对象s”表示多个对象。消息的作用就是对对象的控制。程序设计的关键是设计好每一个对象,以及确定向这些对象发出的命令,使各对象完成相应操作。 8.1类和对象—类的声明和对象的定义 1.类和对象的关系 每一个实体都是对象,有一些对象具有相同的结构和特性,每个对象都属于一个特定的类型。在C++中,对象的类型称为类,类代表了某一批对象的共性和特征。前面已说明,类是对象的抽象,而对象是类的具体实例。 如同结构体类型和结构体变量的关系一样,人们先声明一个结构体类型,然后用它去定义结构体变量,同一个结构体类型可以定义出多个不同的结构体变量。在C++中也是先声明一个类类型,然后用它去定义若干个同类型的对象,对象就是类类型的一个变量。可以说类是对象的模板,是用来定义对象的一种抽象类型。类是抽象的,不占用内存,而对象是具体的,占用存储空间。在一开始时就弄清对象和类的关系是十分重要的。 8.1类和对象—类的声明和对象的定义 2.声明类类型 类是用户自己指定的类型。如果程序中要用到类类型,必须自己根据需要进行声明,或者使用别人已设计好的类。C++标准本身并不提供现成的类的名称、结构和内容。在C++中声明一个类类型和声明一个结构体类型是相似的。 8.1类和对象—类的声明和对象的定义 3.类和结构体的异同 C++增加了类类型后,仍保留了结构体类型(struct),而且把它的功能也扩展了。C++允许用struct来定义一个类类型。 8.1类和对象—类的成员函数 1.成员函数的定义 在类定义体中给出函数的声明,说明函数的参数表和返回值类型,在类定义之外给出函数的具体实现,这是一般成员函数的定义方法。与普通函数不同的是,类外定义成员函数时要指明类的名称,具体形式为: 返回值类型 类名∷函数成员名(参数表) { 函数体 } 8.1类和对象—类的成员函数 2.带缺省值的成员函数 前面讲过带缺省形参值的函数,同样,类的成员函数也可以有缺省形参值,其调用规则与普通函数相同。在实际问题中,有时候这个缺省值可以带来很大的方便。例如,时钟类的函数SetTime()就可以使用缺省值。 8.1类和对象—类的成员函数 3.内联成员函数 内联成员函数的声明有两种方式——隐式声明和显式声明。将函数体直接放在类定义体内,这种方法称之为隐式声明。例如,将时钟类的函数ShowTime声明为内联成员函数,可以显式声明写作: inline void Clock∷ShowTime() { cout Hour : Minute : Second endl; } 8.1类和对象—类的成员访问控制 类的成员包括数据成员和成员函数,分别描述类所表达问题的属性和行为,是问题特性的不可分割的两个方面。成员数据的定义方式与一般的变量相同,只要将这个定义放在类的定义体中即可,它与一般变量的区别就在于其访问的权限可以由类来方便地控制。 类成员访问权限的控制,就是类的隐藏和封装,这种控制是通过设置成员的访问控制属性来实现的。访问控制属性可以有以下三种:公有类型(public)、私有类型(private)和保护类型(protected)。 8.1类和对象—对象成员的引用 在程序中经常需要访问对象中的成员。访问对象中的成员可以有三种方法: 通过对象名和成员运算符访问对象中的成员。 通过指向对象的指针访问对象中的成员。 通过对象的引用变量访问对象中的成员。 void main() { Clock *pa,*pb,aClock,bClock; aClock.setMinute(12); aClock.setHour(16); aClock.setSecond(27); bClock=aClock; pa=new Clock; pa-setHour(10); pa-setMinute(23); pa-setSecond(34); pb=pa; pa-dispTime(); pb-dispTime(); aClock.dispTime(); bClock.di
您可能关注的文档
- chapter6怎样撰写创业计划.ppt
- chapter1幼教理论.ppt
- chapter8碰撞检测和运动模拟.pptx
- chapter.4企业内部环境分析〔案例〕.ppt
- Chapter8第3方物流.ppt
- chapt09卤代烃.ppt
- chapter3化学反应速率和化学平衡.ppt
- chp03语句和流程控制.ppt
- chapter14游戏综合实例剖析.pptx
- CHECK产品质量先期策划.ppt
- 多元化培训模式在学校卫生人员队伍建设中的应用.docx
- 水库橡胶止水工程施工方案(3篇).docx
- 高职单招能力提升B卷题库带答案详解(达标题).docx
- 《数字化商业银行零售业务客户细分与精准营销策略创新与实践》教学研究课题报告.docx
- 全球粮食供应链稳定性评估与2025年展望报告.docx
- 高职单招自我提分评估附答案详解(预热题).docx
- 2025年医药商业供应链优化项目可持续发展分析报告.docx
- 高职单招能力提升B卷题库及参考答案详解【考试直接用】.docx
- 高职单招能力提升B卷题库附答案详解(实用).docx
- 2025年行业投资:职业技能认证培训一体化平台行业投资分析报告.docx
最近下载
- 小学奥数教师版(合辑)1-1-2-3 分数四则混合运算综合.pdf VIP
- 小学奥数合辑(学生用书)1-1-2-3 分数四则混合运算综合.pdf VIP
- 心电监护操作流程课件(PPT 34张).pptx VIP
- 高考数学三年真题(2023-2025年)《统计与概率》真题分类汇编含答案.docx VIP
- 高斯小学奥数五年级上册含答案_分数应用题.doc VIP
- 药食同源发酵项目可行性研究报告建议书新建申请备案案例范文解读.doc VIP
- 2024年广东省高考政治试卷(真题+答案).pdf VIP
- 小学数学 奥数思维《计算:小数的巧算》专项训练2(含解析).docx VIP
- 智慧城市排水防涝系统改造与优化创新研究.docx VIP
- 核心稳定性与核心力量训练.ppt
文档评论(0)