#include #include using namespace std; class Shape { public: Shape(){} virtual ~Shape(){} virtual void draw() = 0; }; class Circle : public Shape { public: Circle(string color) : color(color){} void setX(int x) { this->x = x; cout << "set x success" << endl; } void setY(int y) { this->y = y; cout << "set y success" << endl; } void setRadius(int radius) { this->radius = radius; cout << "set radius success" << endl; } void draw() { cout << "draw Circle [color: " + color + ", x: " + std::to_string(x) + ", y: " + std::to_string(y) + ", radius: " + std::to_string(radius) + "]" << endl << endl; } private: int x; int y; int radius; string color; };