电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第7章 类和对象(二)

32页
  • 卖家[上传人]:E****
  • 文档编号:89343276
  • 上传时间:2019-05-23
  • 文档格式:PPT
  • 文档大小:173KB
  • / 32 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第7章 类和对象(二),7.1 对象指针和对象引用,1指向对象的指针的定义、赋值及应用,7.1.1 对象指针,指向对象的指针的定义格式如下: *=,对象指针也可以被赋值,赋值的方法通常有如下两种。 使用同类对象的地址值给对象指针赋值。 使用运算符new为对象指针赋值。 指针对象成员的表示使用运算符。 指向对象的指针主要用来作函数参数和返回值。 见书中例7.1。,(1)指向对象的常指针 指向对象的常指针定义格式如下: * const ; 该指针的地址值是常量不得改变,而该指针所指向的对象可以改变。 见书中例7.2,例7.3。,2指向对象的常指针和指向常对象的指针,this指针是系统创建的,用它来指向正在被某个成员函数所操作的对象。 在实际应用中this指针被隐含了。在需要时也可以显示出现this表示指向对象的指针。 见书中例7.4。,7.1.2 this指针,对象引用的定义格式如下: & = 对象引用常用来作函数的形参。当函数形参为对象引用时,则要求实参为对象名,实现引用调用。 见书中例7.5。,7.1.3 对象引用,7.2 对象数组和对象指针数组,相同类的若干个对象的集合构成一个对象数

      2、组。对象数组的定义格式如下。 对象数组元素可以被赋值。 见书中例7.6。,7.2.1 对象数组,对象指针数组是指数组的元素是指向对象的指针,并要求所有数组元素都是指向相同类的对象的指针。其格式如下: * 对象指针数组可以被初始化,也可以被赋值。 见书中例7.7。,7.2.2 对象指针数组,指向对象数组的指针可以指向一维对象数组,也可以指向二维对象数组。 指向一维对象数组的一级指针定义格式如下: (*) 见书中例7.8。,7.2.3 指向对象数组的指针,7.3 子对象和堆对象,7.3.1 子对象,在一个类中可以使用另一个类的对象作其数据成员,这种对象的数据成员称为子对象。子对象反映两个类之间的包含关系。,子对象初始化应放在构造函数的成员初始化列表中。成员初始化列表放在构造函数的函数头的后面,用冒号进行分隔。具体格式如下: (): 见书中例7.9。,1使用new运算符创建堆对象,7.3.2 堆对象, 使用new运算符创建一个对象或其他类型变量的格式如下: new ; 或者 ();, 使用new运算符创建一个对象数组或其他类型数组的格式如下: new ; 或者 ;,对象数组创建后可使用如下语

      3、句,判断创建是否成功: if(parray= =NULL) cout“数组创建失败!/n“; exit(1); 使用new所创建的数组,可以给其元素赋值。,1使用new运算符创建堆对象,7.3.2 堆对象, 使用new运算符创建一个对象或其他类型变量的格式如下: new ; 或者 ();, 使用new运算符创建一个对象数组或其他类型数组的格式如下: new ; 或者 ;,对象数组创建后可使用如下语句,判断创建是否成功: if(parray= =NULL) cout“数组创建失败!/n“; exit(1); 使用new所创建的数组,可以给其元素赋值。,delete运算符的功能是用来释放使用new运算符创建的堆对象和堆对象数组的。 使用delete运算符释放对象或变量的格式如下: delete ;,2使用delete运算符释放对象, 使用delete运算符释放对象数组或其他类型数组的格式如下: delete ; 见书中例7.10。,7.4 类的作用域和对象的生存期,7.4.1 类的作用域,类的作用域简称为类域。类域的范围是指该类所定义的类体内 。每个类都具有一个类域,该类成员属于该类的类域

      4、。 类域介于函数域和文件域之间,文件域中可包含类域,类域中可包含函数域。,在C+语言中,对象的存储类有如下3种: 局部对象; 全部对象; 静态对象(又分内部静态与外部静态)。,7.4.2 对象的生存期,局部对象是被定义在一个函数体内或一个分程序中,其作用域是该函数体或该分程序内。,1局部对象,全局对象是被定义在某个文件中,它的作用域是整个程序。,2全局对象,静态对象按其作用域不同又分为内部静态对象和外部静态对象两种。内部静态对象的作用域是定义它的函数体或分程序内;外部静态对象的作用域是定义它的文件,并从定义时开始。 见书中例7.11。,3静态对象,7.5 结构的应用,结构是一种构造数据类型,具有这种数据类型的变量称为结构变量。 结构类型定义格式如下: struct ;,1结构变量的定义和应用,7.5.1 结构变量和结构数组,定义结构变量的格式如下: struct ; 结构变量的成员表示规则如下: 一般结构变量的成员用运算符.表示。 指向结构变量的指针的成员用运算符-表示。 结构数组元素的成员表示用运算符.。,结构变量可以被赋初值,也可以被赋值。 给指向结构变量的指针初始化可以用相同结构

      5、类型的结构变量的地址值或用存储分配函数malloc()。,结构变量的赋值规则如下。 可以将一个结构变量的值赋给另一个相同结构类型的结构变量。 结构变量的运算主要是该结构变量的成员的运算。结构变量成员的运算取决于该成员的类型。结构变量整体运算只有赋值运算。 见书中例7.12。,结构变量和指向结构变量的指针在程序中通常作为函数的参数和函数的返回值。结构变量作函数参数实现传值调用,其调用效率较低,指向结构变量的指针作函数参数实现传址调用,其调用效率较高。 见书中例7.13。,数组元素为结构变量的数组称为结构数组。 结构数组中各个元素必须是相同结构类型的结构变量。结构数组可以在定义或说明时用初始值表进行初始化,也可以使用赋值表达式语句对结构数组的各个元素的成员赋值。 见书中例7.14。,2结构数组,在C+语言中,可以使用同样的关键字 struct定义类,其格式如下: struct ; ,7.5.2 使用struct定义类,使用struct关键字定义的类与使用class关键字定义的类唯一区别是使用struct定义的类中默认访问权限的成员是公有的,而使用class定义的类中默认访问权限的成员是私有的。 见书中例7.15。,作业题和上机练习题,

      《C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第7章 类和对象(二)》由会员E****分享,可在线阅读,更多相关《C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第7章 类和对象(二)》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.