本题要求完成一个圆类的定义,设计适当的函数:包括构造函数、拷贝构造函数以及析构函数,从而可以通过测试程序输出样例
在这里给出一组输入。例如:
5
输出样例:
在这里给出相应的输出。例如:
Constructor called
Copy constructor called
78.5
31.4
Destructor called
Destructor called
中的结果。(圆周率取值3.14)
代码实现:
#include<iostream>
using namespace std;
/* 请在这里填写答案 */class Circle{private:int r;public:Circle(int r):r(r){cout<<"Constructor called"<<endl;}Circle(Circle &a){r = a.r;cout<<"Copy constructor called"<<endl;}double area(){return 3.14*r*r;} double perimeter(){return 2*3.14*r;}~Circle(){cout<<"Destructor called"<<endl;}
};int main()
{float r;cin>>r;Circle c1(r);Circle c2(c1);cout<<c1.area()<<endl;//计算圆面积cout<<c2.perimeter()<<endl;//计算圆周长return 0;
}