1 #include<iostream> 2 using namespace std; 3 class Shape 4 { 5 public: 6 Shape(){} 7 ~Shape(){} 8 virtual float getArea()=0; 9 virtual float getPerim()=0; 10 }; 11 class Circle:public Shape 12 { 13 private: 14 float itsRadius; 15 public: 16 Circle(float radius):itsRadius(radius){} 17 ~Circle(){} 18 float getArea() {return 3.14*itsRadius*itsRadius;} 19 float getPerim() {return 6.28*itsRadius;} 20 }; 21 class Rectangle:public Shape 22 { 23 private: 24 float itsWidth; 25 float itsLength; 26 public: 27 Rectangle(float len,float width):itsLength(len),itsWiAdth(width){}; 28 ~Rectangle(){}; 29 virtual float getArea(){return itsLength*itsWidth;} 30 float getPerim() {return 2*itsLength+2*itsWidth;} 31 32 33 float GetLength(){return itsLength;} 34 float GetWidth(){return itsWidth;} 35 }; 36 int main() 37 { 38 Shape *sp; 39 sp=new Circle(5); 40 cout<<"The area if the Circle is"<<sp->getArea()<<endl; 41 cout<<"The perimeter of the Circle is"<<sp->getPerim()<<endl; 42 delete sp; 43 sp=new Rectangle(4,6); 44 cout<<"The area of the Rectangle is"<<sp->getArea()<<endl; 45 cout<<"The perimeter of the Rectangle is"<<sp->getPerim()<<endl; 46 delete sp; 47 return 0; 48 }
标签:return,5.8,float,itsRadius,Shape,getPerim,public From: https://www.cnblogs.com/lijianlongCode13/p/17383352.html