- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2011-2012-1学期c第7章-类和对象2-1学生-20110921
赋初值例: 胡凤珠 第7章 类和对象(二) 第7章 类和对象(二)- 目录 对象指针和对象引用 1 对象数组和对象指针数组 2 子对象和堆对象 3 类的作用域和对象的生存期 4 结构的应用 5 第7章 类和对象(二)主要内容 介绍各种对象和知识: 一般对象 常对象 指向对象的指针 对象引用 子对象 堆对象 运算符new delete 的应用 对象的生存期 7.1 对象指针和对象引用 7.1.1 对象指针 定义格式: 类名 *对象指针名=初值 对象指针:指向对象的指针。 A a(8); A *pa=a; pa a 对象指针可以赋初值,也可不赋初值,初值通常使用同类对象的地址值。 1、指向对象的指针的定义、赋值及应用 对象指针也可以被赋值,方法如下: ① 使用同类对象的地址值给对象指针赋值; ② 使用运算符new为对象指针赋值。 指向对象成员的表示用运算符-,还可通过指针对象成员来给该指针指向的对象赋值。 指向对象的指针主要用来作函数参数和返回值。 7.1 对象指针和对象引用 7.1.1 对象指针 1、指向对象的指针的定义、赋值及应用 对象指针pa 对象指针a 8 5 0 0 对象a 对象b 8 5 25 20 a1是fun函数中的局部对象,函数调用结束时空间释放! 对象指针作函数参数的优点:实现传址调用,传参时不拷贝实参副本,从而提高了程序运行的效率,减少了时空开销。 (1)指向对象的常指针 类名 * const 指针名; 该指针始终指向一个对象,指针中对应的地址值是常量不得改变,而该指针所指向的对象中的内容是可以改变。 Date d1,d2; Date *const pd=d1; pd=d2; 2.指向对象的常指针和指向常对象的指针 7.1 对象指针和对象引用 7.1.1 对象指针 × 指向对象的常指针pd 2.指向对象的常指针和指向常对象的指针 7.1 对象指针和对象引用 (2)指向常对象的指针 const 类名 * 指针名= 初值; const Date d1(2005,7,1); const Date *pd=d1; 注意: 如果有一个常对象,指向它的指针一定要用指向常对象的指针。 指向常对象的指针可以用一般对象的地址进行赋值,但不能通过该指针改变对象的值。 使用常对象指针引用的成员函数应是常成员。 指向常对象的指针的地址值是可以改变的。 指向常对象的指针可作为函数参数。 2 7 2005 常对象d1 对象d2 常对象指针pd 不能通过指向常对象的指针改变对象的值 7.1 对象指针和对象引用 7.1.2 this指针 每一个成员函数中隐含一个特殊的指针,即 this指针。 它是系统创建的,指向正在调用类的成员函数的对象,它的值是正在 调用类的成员函数的对象的地址。 在需要时也可以显示出现this表示指向对象的指针。 7.1 对象指针和对象引用 0 0 5 1 a1 a2 this 引用a作为a2的别名 5 1 每一个成员函数中隐含一个this指针,但我们不用写出来! 7.1 对象指针和对象引用 7.1.3 对象引用 对象引用的定义格式: 类名 对象引用名=对象名 A a(6); A ra=a; 对象引用常用来作函数的形参。 当函数形参为对象引用时,则要求实参为对象名,实现引用调用。 但由于引用调用可以在被调用函数中通过引用来改变函数中的参数值,为避免改变的时候,可以使用对象的常引用做形参。 A a(7); Const A ra=a; 7.1 对象指针和对象引用 7.1.3 对象引用 对象常引用的定义格式: const 类名 对象引用名=对象名 8 5 对象a 0 0 对象b 8 5 25 20 8 5 对象a1 15 10 例7.5与例7.1比较 对象引用和对象指针作为函数的参数都可实现对实参值得改变! 如果例7.5把fun的第二个参数改为常引用,则编译出错 相同类的若干个对象的集合构成一个对象数组。对象数组的定义格式如下。 类名 对象数组名 [大小]… 对象数组元素可以被赋值。 7.2 对象数组和对象指针数组 7.2.1 对象数组 例如:TDate date1[5]; TDate date2[2][3]; 该数组元素的对象属于哪一个类 数组元素个数,即该数组中包含了多少个对象 方式1: 方式2: 定义对象数组aa1: 7.2 对象数组和对象指针数组 7.2 对象数组和对象指针数组 对象数组stu 数组元素stu[0] 数组元素stu[1]
您可能关注的文档
- c7第七章 函数.ppt
- C语言第七章ppt教学.ppt
- TP2 变量和数据类型(下).ppt
- 第5章 函数_zlh.ppt
- 147种高聚合物名称缩写.doc
- 第7章 函数 gfjgfgjfyyrry?.ppt
- 计算机c++第4章课件.ppt
- 第5章 函数与程序结构.ppt
- (2011--2012年高三第一轮复习)第八章第三节 盐类的水解.ppt
- (山西专用)2014届高考化学一轮复习 第七章 化学反应速率和化学平衡典型易错讲解21(含解析) 新人教版.doc
- 部编本小学语文一年级第五单元复习.ppt
- 团队情绪管理课件.pptx
- 北师版八年级下册数学精品教学课件 第6章 集训课堂 测素质 平行四边形的性质和判定.ppt
- 2025年秋季人教版数学六年级上册同步导学案.pdf
- 2025年内蒙古自治区乌兰察布市高一入学语文分班考试真题含答案.docx
- 2025年新北师大版数学1年级上册全册同步教学设计.docx
- 2025年内蒙古自治区乌兰察布市高一入学英语分班考试真题含答案.docx
- 2025年天津市城市管理研究中心招聘笔试高频难、易错点备考题库附答案详解.docx
- 2025年天津市城市道路桥梁管理事务中心事业单位招聘26人笔试备考题库及参考答案详解.docx
- 2025年天津市天宾服务中心招聘13人方案笔试备考题库及答案详解一套.docx
最近下载
- 肯尼亚建筑市场行业报告.pptx
- 浙江杭州余杭交通集团有限公司招聘笔试题库2023.pdf VIP
- 人工胆囊、人工胆囊设备和人工胆囊在胆囊手术中的应用.pdf VIP
- 重力与弹力高一上学期物理人教版2019必修第一册+.pptx VIP
- 胃癌的诊治现状与进展.pptx VIP
- 数控压装压力机 第2部分:技术条件.docx VIP
- 【课件】匀变速直线运动速度与时间的关系+课件-高一上学期物理人教版(2019)必修第一册.pptx VIP
- XX医院职能部门监管手术、麻醉授权管理督导、检查、总结、反馈及持续改进记录表.pdf VIP
- 电力调度数据网络接入技术规范及网络拓扑图.doc VIP
- ZZGA高频开关整流器使用说明书.doc
文档评论(0)