#include<iostream>
using namespace std;
class Base{
public:
Base(double a, double b,double c)
{
h = a;
p = b;
q = c;
}
virtual void disp()=0;
protected:
double h,p,q;
};
class Cuboid:public Base{
public:
Cuboid(double a, double b, double c) :Base(a, b,c)
{};
void disp()
{
cout << "该长方体的底部长为:" << p << ",宽为:" << q << ",高为:" << h << ",体积为:" << p*q*h << endl;
}
};
class Cylinder :public Base{
public:
Cylinder(double a, double b) :Base(a, b, b)
{};
void disp()
{
cout << "该圆柱体的底部半径为:" << p << ",高为:" << h << ",体积为:" << p*q*h << endl;
}
};
int main()
{
Base *pc;
Cuboid cu1(3.0,6.0,2.0);
pc = &cu1;
pc->disp();
Cylinder cy1(3.0,6.0);
pc = &cy1;
pc->disp();
return 0;
}
<img src="https://img-blog.csdn.net/20150516184256377?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2FrdXJhcmFpbjc3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />