// 假设有两个类，Shape（形状）和 Rectangle（矩形）。Shape 类具有一个成员函数 getArea() ，用于计算形状的面积。Rectangle 类继承自 Shape 类，并添加了两个成员变量 width（宽度）和 height（高度）。请在给定的类定义中完成代码，并实现 Rectangle 类的 getArea() 函数来计算矩形的面积。
// 【提示】Shape的类设计如下，表示为抽象类（getArea() 是纯虚函数）：
//     class Shape
// {
// public:
//     virtual double getArea() const = 0;
// };

#include <iostream>
#include <cstring>
#include <cstdlib>

using namespace std;

class Shape
{
public:
    virtual double getArea() const = 0;
};

class Rectangle : public Shape
{
private:
    double width, height;

public:
    Rectangle(double width, double height) : width(width), height(height) {}
    ~Rectangle() {}

public:
    double getArea() const // 重写父类的纯虚函数，const 可以保证不会修改成员变量的值
    {
        return width * height;
    }
};

int main()
{
    Shape *shape = new Rectangle(3, 4);
    cout << shape->getArea() << endl; // 12
    return 0;
}
