class Shape { public: Point corner; void virtual draw() = 0; }; class Circle : public Shape { public: int radius; void draw() { drawCircle(corner + radius, radius); } };