C++笔记之实现多态的所有方法
code review!
文章目录
- C++笔记之实现多态的所有方法
- 1.C++中多态是是什么?请用简洁准确的话描述
- 2026-08-09.C++中实现多态的所有方式
- 一、静态多态性(编译时多态/早绑定)
- 二、动态多态性(运行时多态/晚绑定)
- 2.虚函数实现多态
- 2.1.虚函数(Virtual Functions)
- 2.2.纯虚函数(Pure Virtual Functions)
- 2.3.虚析构函数(Virtual Destructor)
- 2.4.虚函数表(Virtual Function Table)
- 3.函数指针(Function Pointers)
- 4.模板(Templates)
- 5.达到多态性的效果
- 5.1.接口类(Interface Classes)
- 5.2.可调用对象(Callable Objects)
- 6.C++中函数重载是不是一种实现多态的方法?
- 7.虚函数表
- 8.虚函数指针
- 9.抄自别的文章——C++中虚函数的实现
- 虚函数表(vtable)
- 虚函数指针(vptr)
- 多态的工作机制
- 注意事项
- 2024-04-13.编译时多态(静态多态)和运行时多态(动态多态)
- 解释和应用
- 1. 编译时多态(静态多态)
- 2. 运行时多态(动态多态)
- 运算符重载(Operator Overloading)实现多态
1.C++中多态是是什么?请用简洁准确的话描述
2026-08-09.C++中实现多态的所有方式
C++中的多态性从原理上分为两大类:静态多态(编译时多态)和动态多态(运行时多态)。下面按照"大类 → 子概念 → 具体形式"的层级组织,避免同级概念之间出现包含关系。
一、静态多态性(编译时多态/早绑定)
由编译器在编译阶段就确定调用哪个函数或生成哪份代码,主要包含两条实现路径:
重载(Overloading):同一作用域内通过函数签名差异,让编译器在编译期选择正确版本。
- 函数重载:函数名相同,参数列表(类型或个数)不同。
- 运算符重载:本质是函数重载的特例,通过重定义内置运算符的行为,使自定义类型可以像内置类型一样使用运算符。
模板(Templates):通过类型参数化,在实例化时由编译器生成具体代码,实现"参数多态"。
- <