#include using namespace std;

class Shape{ public: virtual double area()=0; virtual double perim()=0; virtual ~Shape()=0; }; Shape::~Shape(){}

class Rectangle:public Shape{ double length,width; public: Rectangle(double l=1,double w=1):length(l),width(w){} double area(){return lengthwidth;} double perim(){return 2(length+width);} }; class Circle:public Shape{ double radius; public: Circle(double r=1):radius(r){} double area(){return 3.14radiusradius;} double perim(){return 23.14radius;} }; int main(){ Shape *p; Rectangle r(4,5); Circle c(4); p = &r; cout'Rectangle area is '<area()<<endl; cout'Rectangle perim is '<perim()<<endl;

p = &c;
cout'Circle area is '<<p->area()<<endl;
cout'Circle perim is '<<p->perim()<<endl;

return 0;

}

C++ 抽象图形类 Shape 实现面积和周长计算

原文地址: https://www.cveoy.top/t/topic/npgw 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录