纯虚函数和抽象类
1 目标
本文的目的是学习纯虚函数和抽象类。
2 示例代码
纯虚函数和抽象类在 C++ 中用于实现接口和多态。纯虚函数是一个没有实现的虚函数,而抽象类是包含一个或多个纯虚函数的类。抽象类不能被实例化,只能作为基类使用。
假设我们有一个抽象类 Shape,表示几何形状。该类包含一个纯虚函数 area,用于计算形状的面积。然后我们定义两个派生类 Circle 和 Rectangle,它们分别实现 Shape 类的 area 函数。
#include <iostream>
#include <cmath>
// 抽象类 Shape
class Shape {
public:
// 纯虚函数
virtual double area() const = 0;
// 虚析构函数
virtual ~Shape(