时间:2026-10-29 16:38:14来源:
在C++中,虚函数和纯虚函数是实现多态的重要机制,但它们有明显区别。
| 特性 | 虚函数 | 纯虚函数 |
| 定义 | 使用 `virtual` 关键字定义 | 使用 `virtual` 并赋值为 0(`virtual void func() = 0;`) |
| 实现 | 必须有具体实现 | 无实现,仅声明 |
| 类型 | 可以是普通类的成员函数 | 通常用于抽象类 |
| 对象创建 | 可以实例化对象 | 不能实例化对象 |
| 多态支持 | 支持运行时多态 | 也支持多态,但需子类实现 |
虚函数允许子类重写,而纯虚函数强制子类必须实现。纯虚函数常用于定义接口,确保子类提供具体功能。