// Note:Your choice is C++ IDE
#include <iostream>
using namespace std;
class sharpe //抽象基
{
public:
virtual void area()const=0;//纯虚函数
};
class rectangle:public sharpe //矩形类
{
public:
rectangle(double w,double l){width=w;length=l;}//构造
virtual void area()const{cout<<"矩形面积为:"<<width*length<<endl;}
protected:
double width,length;
};
class triangle:public rectangle //三角形类
{
public:
triangle(double w,double l):rectangle(w,l){}
virtual void area()const{cout<<"三角形的面积为:"<<width*length/2<<endl;}
};
class circle:public sharpe //圆类
{
public:
circle(double r){radius=r;}
virtual void area()const{cout<<"圆的面积为:"<<radius*radius*3.14<<endl;}
protected:
double radius;
};
int main()
{
rectangle a(20,34);
a.area();
triangle b(20,45);
b.area();
sharpe *p=new circle(20);
p->area();
delete p;
return 0;
}