<img src="https://img-blog.csdn.net/20150516184124244?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FrdXJhcmFpbjc3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />#include<iostream>
using namespace std;
class area_cl{
public:
area_cl(double r, double s)
{
height = r; width = s;
}
virtual void area() = 0;
protected:
double height,width;
};
class rectangle:public area_cl{
public:
rectangle(double r, double s): area_cl(r,s)
{};
void area()
{
cout << "矩形的高是: " << height << "宽是: " << width;
cout << "面积是: " << height*width << endl;
}
};
class isosceles:public area_cl{
public:
isosceles(double r, double s): area_cl(r,s)
{};
void area()
{
cout << "三角形的高是: " << height << "宽是: " << width;
cout << "面积是: " << height*width << endl;
}
};
int main()
{
area_cl *p;
rectangle t(10.0, 5.0);
isosceles s(4.0, 6.0);
p = &t;
p->area();
p = &s;
p->area();
return 0;
}
<img src="https://img-blog.csdn.net/20150516184124244?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FrdXJhcmFpbjc3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />