12 void move(double dx, double dy);
13 virtual double area(void) = 0;
14 virtual double perimeter(void) = 0;
18 class Circle : public Shape {
22 Circle(double r) : radius(r) { };
23 virtual double area(void);
24 virtual double perimeter(void);
27 class Square : public Shape {
31 Square(double w) : width(w) { };
32 virtual double area(void);
33 virtual double perimeter(void);