定义一个圆类(Circle),在该类定义中包括:(1)成员变量:radius(半径)、circumference(圆周长)和area(面积);(2)定义构造函数(以半径为参数,缺省值为0,周长和面

定义一个圆类(Circle),在该类定义中包括:

(1)成员变量:radius(半径)、circumference(圆周长)和area(面积);

(2)定义构造函数(以半径为参数,缺省值为0,周长和面积在构造函数中生成)和拷贝构造函数;

(3)定义SetRadius和GetRradius函数;

(4)编写main函数进行类的测试。

#define _CRT_SECURE_NO_WARNINGS

#include <iostream>
#include <cstring>

using namespace std;
#define PI 3.14
class Circle
{
public:
	Circle(double r = 0);
	~Circle();
	Circle(const Circle& C);
	void SetRadius(double R);
	double GetRradius();

private:
	double radius;
	double circumference;
	double area;

};
Circle::Circle(double r) :radius(r)
{
	circumference = PI * (radius * 2);
	area = PI * (radius * radius);
}
Circle::Circle(const Circle& C)
{
	radius = C.radius;
	circumference = C.circumference;
	area = C.area;
}
Circle::~Circle()
{
}
void Circle::SetRadius(double R)
{
	radius = R;
}
double Circle::GetRradius()
{
	return radius;
}


int main()
{
	Circle circle;
	int r = 5;
	cout << "GetRradius:" << circle.GetRradius() << endl;
	circle.SetRadius(r);
	cout << "SetRadius后调用GetRradius :" << circle.GetRradius() << endl;
	Circle circle1 = circle;
	cout << "拷贝circle1:" << circle1.GetRradius() << endl;


	return 0;
}

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
构造函数; (3)定义成员函数get_radius、get_circumference和get_area分别用于获取半径周长和面积的值; (4)定义成员函数set_radius用于设置半径的值,并更新周长和面积的值; (5)定义成员函数display用于输出半径周长和面积的值。 以下是类的实现代码: ```c++ #include <iostream> using namespace std; class Circle { private: double radius; // 半径 double circumference; // 周长 double area; // 面积 public: // 构造函数 Circle(double r = 0) { radius = r; circumference = 2 * 3.14159 * radius; area = 3.14159 * radius * radius; } // 拷贝构造函数 Circle(const Circle& c) { radius = c.radius; circumference = c.circumference; area = c.area; } // 获取半径 double get_radius() const { return radius; } // 获取周长 double get_circumference() const { return circumference; } // 获取面积 double get_area() const { return area; } // 设置半径 void set_radius(double r) { radius = r; circumference = 2 * 3.14159 * radius; area = 3.14159 * radius * radius; } // 输出的信息 void display() const { cout << "半径:" << radius << endl; cout << "周长:" << circumference << endl; cout << "面积:" << area << endl; } }; int main() { Circle c1(5); // 创建一个半径为5的 c1.display(); Circle c2 = c1; // 拷贝构造函数 c2.set_radius(3); c1.display(); c2.display(); return 0; } ``` 该程序的输出结果为: ``` 半径:5 周长:31.4159 面积:78.5398 半径:5 周长:31.4159 面积:78.5398 半径:3 周长:18.8496 面积:28.2743 ``` 可以看到,程序正确地输出了的信息,并且拷贝构造函数也能够正确地复制的信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值