深入理解多态:从虚函数表到底层实现
- 一、多态的概念
-
- [1.1 编译时多态](#1.1 编译时多态)
- [1.2 运行时多态](#1.2 运行时多态)
- 二、多态的定义和使用
-
- [2.1 多态的判定标准](#2.1 多态的判定标准)
-
- [2.1.1 虚函数](#2.1.1 虚函数)
- [2.1.2 函数重写](#2.1.2 函数重写)
- [2.2 相关的题目](#2.2 相关的题目)
- [2.3 析构函数的重写](#2.3 析构函数的重写)
- [2.4 override 和 final关键字](#2.4 override 和 final关键字)
- [2.5 纯虚函数和抽象类](#2.5 纯虚函数和抽象类)
- 三、多态的底层实现
-
- [3.1 虚函数表简介](#3.1 虚函数表简介)
- [3.2 虚函数的调用](#3.2 虚函数的调用)
- [3.3 静态绑定和动态绑定](#3.3 静态绑定和动态绑定)
- [3.4 虚函数表详解](#3.4 虚函数表详解)
-
- [3.4.1 虚函数的储存](#3.4.1 虚函数的储存)
-
- [3.4.1.1 虚函数的储存规则](#3.4.1.1 虚函数的储存规则)
- [3.4.1.2 虚函数的重写](#3.4.1.2 虚函数的重写)
- [3.4.2 虚函数存放的位置问题](#3.4.2 虚函数存放的位置问题)
- [3.4.3 虚函数表存放的位置](#3.4.3 虚函数表存放的位置)

递归何不归:个人主页
个人专栏 : 《C++庖丁解牛》《数据结构详解》
在广袤的空间和无限的时间中,能与你共享同一颗行星和同一段时光,是我莫大的荣幸
一、多态的概念
1.1 编译时多态
1.2 运行时多态
二、多态的定义和使用
2.1 多态的判定标准
1、要是用基类的引用或者是引用来调用
2、被调用得函数是虚函数
3、调用函数需要构成重写