虚函数以及实现原理
实验介绍
在说到虚函数之前先介绍多态概念,多态以封装和继承为基础,多态又分为静态多态和动态多态。而本次课程主要讲解的是动态多态。
实验 “虚函数以及实现原理” 到实验 “异常处理” 的参考代码可以使用如下命令进行下载:
wget https://labfile.oss-internal.aliyuncs.com/courses/1642/3.polymorphism.zip
知识点
- 静态多态(早绑定)
- 动态多态(晚绑定)
- 虚析构函数
- 虚函数
- 虚函数表
多态概念
C++
中多态分为静态多态和动态多态。在前面的课程中已经对静态多态和动态多态有所使用,只是没有明确概念。现在也正式告诉你 “歌名”。
静态多态
静态多态又叫做早绑定,将不同特殊行为和单个泛化记号相关联,由于这种关联处理于编译期而非运行期,因此被称为 “静态”。可以用来实现类型安全、运行高效的同质对象集合操作。
静态多态表现的形式:
- 函数重载。
- 运算符重载。
- 带变量的宏多态。
动态多态
动态多态又叫做晚绑定,生效