课堂练习(派生与类)
#include<iostream>
#include<iomanip>
#define PI 3.14
using namespace std;
//圆类
class Circle
{
public:
int C_r;
Circle(int x,int y,int r);
~Circle()
{
cout<<"析构"<<endl;
}
double area()
{
cout<<"圆的面积是:"<<fixed<<setprecision(2)<<PI*C_r*C_r<<endl;
}
private:
int C_x,C_y;
};
Circle::Circle(int x,int y,int r)
{
cout<<"构造"<<endl;
C_x=x;
C_y=y;
C_r=r;
}
//继承(单一继承)
class Column: public Circle
{
public:
Column(int x,int y,int r,int h);
double area2()
{
cout<<"圆柱的体积是"<<fixed<<setprecision(2)<<PI*C_r*C_r*C_h<<endl;
}
private:
int C_h;
};
Column::Column(int x,int y,int r,int h):Circle(x,y,r)
{
cout<<"构造"<<endl;
C_h=h;
}
int main()
{
int x,y,r,h;
cin>>x>>y>>r>>h;
Circle p(x,y,r);
p.area();
Column p1(x,y,r,h);
p1.area2();
}
🐖:有待改进,后续日后再更。