具体代码如下:
#include <iostream>
using namespace std;
class shape{
public:
virtual double getarea()=0;
virtual double getperim()=0;
};
class rectangle:public shape{
public:
rectangle(double l,double w):pl(l),pw(w){}
~rectangle();
virtual double getarea(){return pl*pw;}
virtual double getperim(){return 2*(pl+pw);}
private:
double pl;
double pw;
};
class circle:public shape{
public:
circle(double r):pr(r){}
~circle();
virtual double getarea(){return 3.14*pr*pr;}
virtual double getperim(){return 6.28*pr;}
private:
double pr;
};
void main(){
shape *sp;
sp=new circle(1);
cout<<"圆的面积是:"<<sp->getarea()<<endl;
cout<<"圆的周长是:"<<sp->getperim()<<endl;
delete sp;
sp= new rectangle(10,85);
cout<<"矩形的面积是:"<<sp->getarea()<<endl;
cout<<"矩形的周长是:"<<sp->getperim()<<endl;
delete sp;
}
来都来了,点个赞吧。谢谢;