- 1
- 0
- 约6.07千字
- 约 28页
- 2026-09-16 发布于广东
- 举报
第十二章多态性与虚函数
;主要内容;多态性(polymorphism)是面向对象程序设计的一个重要特征。利用多态性可以设计和实现一个易于扩展的系统。
静态多态性
动态多态性;
以前学过的函数重载和运算符重载实现的多态性属于静态多态性,在程序编译时系统就能决定调用的是哪个函数,因此静态多态性又称编译时的多态性。静态多态性是通过函数的重载实现的(运算符重载实质上也是函数重载)。
动态多态性是在程序运行过程中才动态地确定操作所针对的对象。它又称运行时的多态性。动态多态性是通过虚函数(virtualfunction)实现的。
;例12.1先建立一个Point(点)类,包含数据成员x,y(坐标点)。以它为基类,派生出一个Circle(圆)类,增加数据成员r(半径),再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加数据成员h(高)。要求编写程序,重载运算符“”和“”,使之能用于输出以上类对象。;对于一个比较大的程序,应当分成若干步骤进行。先声明基类,再声明派生类,逐级进行,分步调试。
先写基类Point类,测试基类。
定义派生类Circle类,测试派生类。
定义派生类Cylinder类,测试派生类。;在类的继承层次结构中,在不同的层次中可以出现名字相同、参数个数和类型都相同而功能不同的函数。编译系统按照同名覆盖的原则决定调用的对象。
人们提出这样的设想,能否用
您可能关注的文档
- 复旦大学《C语言程序设计》课件-第9、10讲.pdf
- 复旦大学《大学物理》课件-第十一章量子力学初步.pdf
- 复旦大学《大学物理》课件-第十二章粒子性和波动性.pdf
- 河海大学《数值分析》课件-第9章常微分方程数值解法.ppt
- 湖南大学《C语言程序设计》课件-第11章继承与派生.pptx
- 湖南大学《C语言程序设计》课件-第13章输入输出流.pptx
- 湖南大学《C语言程序设计》课件-第14章c++工具.pptx
- 湖南大学《大学英语第二册》课件-第1章.pdf
- 湖南大学《大学英语第二册》课件-第2章.pdf
- 湖南大学《大学英语第二册》课件-第3章.pdf
- 2026-2027学年河南省名校高三(上)开学化学试卷(含答案).docx
- 2025-2026学年山东省烟台市招远市七年级(下)期末历史试卷(五四学制)(含答案).docx
- 2025-2026学年上海市立信会计金融学院附属高行中学八年级(下)期末物理试卷(五四学制)(含答案).docx
- 10力学专题实验——《验证动量守恒定律》专项提升(含答案).pdf
- 2025-2026学年陕西省西安市阎良区八年级(下)期中历史试卷(含答案).docx
- 2025-2026学年陕西省西安市蓝田县八年级(下)期中历史试卷(含答案).docx
- 2026秋新教材湘科版小学科学六年级上册第二单元《水在自然界中的变化》课时练习(附答案).docx
- 2026秋新教材湘科版小学科学六年级上册第三单元《物质变化》课时练习(附答案).docx
- 2025-2026学年上海市长宁区八年级(下)期末英语试卷(含答案).docx
- 2025-2026学年四川省成都市东部新区第七中学校七年级(下)期末英语试卷(含答案).docx
原创力文档

文档评论(0)