Step 3 of 8
Abstract classes
A pure virtual function (= 0) has no implementation in the base class. A class with one is abstract: you can't create it directly, only derive from it. It acts as an interface.
class Shape {
public:
virtual double area() const = 0;
virtual ~Shape() = default;
};
Your turn: write Circle (radius) and Rect (width, height) implementing area(). Use 3.14159265358979 for pi.