关于C++析构函数一道题目

来源:百度知道 编辑:UC知道 时间:2024/06/24 04:49:54
设计并测试一个圆类(Circle).属性包括pi、半径(radius)、圆周长和面积。要求定义构造函数(以半径为参数,默认值为0),和复制函数,周长和面积在构造函数中生成,设置半径并重新计算周长和面积,从贫木上打印半径、周长和面积。

#include<iostream>
using namespace std;

#define pi 3.1459
class Circle
{
public:
Circle(double r)
{
radius=r;
c=2*pi*r;

s=pi*r*r;
}

Circle(const Circle &cir)
{
radius=cir.radius;
c=cir.c;
s=cir.s;
}

void set(double r)
{
radius=r;
c=2*pi*r;
s=pi*r*r;
}

void print()
{
cout<<"radius="<<radius<<endl;
cout<<"c="<<c<<endl;
cout<<"s="<<s<<endl<<endl;
}
private:
double radius;
double c;
double s;
};

void main()
{
Circle c1(1.34);
c1.print();

Circle c2(c1);
c2.print();

c2.set(4.43);
c2.print();
}