应该需要用到对象的创建和撤销,用cylinder
创建圆柱体类,这个程序整体怎么写
下午要用
供参考
#include <iostream>
using namespace std;
const float PI = 3.1415926;
class Circle
{
private :
float radius;
public:
Circle()
{
radius = 0;
}
Circle(float R)
{
radius = R;
}
float area()
{
return PI * radius * radius;
}
float line()
{
return PI * 2 * radius;
}
};
class Cylinder:Circle
{
private:
float height;
public:
Cylinder();
Cylinder(float r, float h);
~Cylinder();
float area();
};
Cylinder::Cylinder(float r, float h):Circle(r)
{
height=h;
cout << height<< endl;
}
Cylinder::~Cylinder()
{
cout << height<< endl;
}
float Cylinder::area()
{
return 2*Circle::area()+Circle::line()*height;
}
int main()
{
Cylinder cy(1,2);
cout << cy.area() << endl;
system("pause");
return 0;
}
没太明白你的意思,应该是说对Cylinder类的使用吧,创建对象和销毁对象。
#include <iostream>
using namespace std;
class Cylinder
{
public:
Cylinder(float r, float h);
~Cylinder();
private:
float m_radius;
float m_height;
};
Cylinder::Cylinder(float r, float h)
: m_radius(r)
, m_height(h)
{
cout << "创建圆柱体类对象:底面半径=" << m_radius << " 高=" << m_height << endl;
}
Cylinder::~Cylinder()
{
cout << "撤销圆柱体类对象:底面半径=" << m_radius << " 高=" << m_height << endl;
}
int main()
{
Cylinder *pcylinder = new Cylinder(10.5,20.4);
delete pcylinder;
pcylinder = nullptr;
return 0;
}
Cylinder *pcylinder = new Cylinder(10.5,20.4); //new的时候就会调用Cylinder的构造函数
delete pcylinder;//delete时候会调用Cylinder的析构函数你代码中Circle是指的圆类么,是的话应该是在圆类中也有打印创建Circle类和销毁Circle类的