C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第9章 多态性和虚函数
17页1、第9章 多态性和虚函数,9.1 运算符重载,9.1.1 运算符重载的概念,1哪些运算符可以重载 大多数运算符都可以重载,只有少数运算符不能重载。, 操作数个数不变; 优先级不变; 结合性不变; 语义不变。,2运算符重载遵循的“4个不变”原则,重载运算符的选择主要是根据运算符的操作数的个数、类型及顺序的不同来选择的。,3重载运算符在程序中的选择, 运算符重载是通过函数定义来实现的,在定义运算符重载的函数时不能设置函数的默认值。 重载运算符的定义方法通常采用成员函数方法或友元函数方法。 通常不随意定义重载运算符,而尽量使得重载运算符的功能与其原来用于标准数据类型的功能相似。 用于类对象的运算符一般都要重载。,4使用运算符重载应注意的问题,9.1.2 运算符重载的两种方法,1成员函数方法 运算符重载采用成员函数方法的形式如下: operator () 见书中例9.1。,重载运算符采用友元函数的形式格式如下: friend operator () 见书中例9.2。,2友元函数方法,9.1.3 运算符重载举例,1赋值运算符重载 见书中例9.3。 2下标运算符重载 见书中例9.4。 3插入符和提取
2、符的再重载 见书中例9.5。,9.2 静态联编和动态联编,“联编”的含义是指对于相同名字的若干个函数的选择问题题。 在C+语言中,可分为静态联编和动态联编两种。静态联编是在编译时进行的,又称早期联编。动态联编是在运行阶段进行的,又称滞后联编。 见书中例9.6,例9.7。,9.2.1 联编的概念,1虚函数的说明方法,9.2.2 虚函数,虚函数是非静态成员函数。 说明虚函数的格式如下: virtual (),虚函数是实现动态联编的关键。 虚函数可以通过基类指针或引用访问基类和派生类中被说明为虚函数的同名函数。,2虚函数的作用,虚函数具有继承性。 见书中例9.8。,3虚函数的特征,9.2.2 动态联编,1使用对象指针或对象引用调用虚函数时,可以实现动态联编 见书中例9.9。,2使用成员函数调用虚函数可以实现动态联编 见书中例9.10。,析构函数可以说明为虚函数,其方法也是在析构函数头前边加关键字virtual。 虚析构函数的作用在于系统将采用动态联编调用虚析构函数。 见书中例9.11。,9.2.3 虚析构函数,9.3 纯虚函数和抽象类,9.3.1 纯虚函数,纯虚函数是一种特殊的虚函数,它是一种没有具体实现的虚函数。 纯虚函数格式如下: virtual () = 0; 见书中例9.12。,9.3.2 抽象类,1抽象类的概念,凡是包含有一个或多个纯虚函数的类称为抽象类。 抽象类不能定义对象,但是它可以定义对象指针或对象引用。 抽象类不同于普通的具体类,它是更高级的抽象。,抽象类在类的层次结构中,作为顶层或最上面几层的,由它作为一个类族的公共接口。 抽象类是一种公共接口,它是下面诸多的派生类的集中归宿。,2抽象类的作用,作业题和上机练习题,
《C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第9章 多态性和虚函数》由会员E****分享,可在线阅读,更多相关《C++语言程序设计教程 第2版 普通高等教育“十一五”国家级规划教材 教学课件 ppt 作者 吕凤翥 王树彬_ 第9章 多态性和虚函数》请在金锄头文库上搜索。
逍遥游复习 知识点整理
近现代法德关系史 高三展示课3稿
当代大学生人生信仰及追求的调查研究
长相思 纳兰性德-ppt课件
课件:危机意识 一
英语ppt演讲关于阿甘正传
发达国家基础教育改革的动向与趋势 修改版
中国民间美术 课件.ppt
生物质发电技术与系统 课程ppt 第1章 生物质发电技术现状及发展趋势 2学时 -----2016
现代信号处理思考题 含答案
执业药师继续教育 抑郁症的药物治疗 100分
小学生的成长档案模板不用修改 万能型
增订六版 现代汉语 上册 第二章文字 思考与练习答案
国家财政ppt课件
加拿大英语介绍
六年级统计图的选择课件
中学生成长档案ppt
中国现代文学史期末复习整理
lohi和hihilo训练对女子赛艇运动员运动能力影响的比较研究
风雨贾平凹阅读答案
2024-04-11 25页
2024-04-11 37页
2024-04-11 28页
2024-04-11 31页
2024-04-11 36页
2024-04-11 29页
2024-04-11 22页
2024-04-11 27页
2024-04-11 34页
2024-04-11 32页