C++ 的数据封装的实现

来源:百度知道 编辑:UC知道 时间:2024/06/24 07:11:38
a)设计一个圆类CCircle,该类满足下述要求:
具有圆心、半径等信息。
具有设置圆心(SetCenter)和设置半径(SetRadius)的功能。
具有获得周长(GetCircumference)和获得面积(GetArea)的功能。
b)在main函数中,完成以下工作:
实例化一个CCircle类的对象a_circle,调用SetCenter、SetRadius设置圆心和半径;调用GetCircumference和GetArea获得周长和面积,并将周长和面积显示在屏幕上。

#include <iostream>
using std::cout;
using std::endl;

class CCirle
{
public:
CCirle() : PI(3.14159f)
{
m_centerX = 0;
m_centerY = 0;
m_fRadius = 0;
}
void SetCenter(float x, float y)
{
m_centerX = x;
m_centerY = y;
}
void SetRadius(float fRadius)
{
m_fRadius = fRadius;
}
inline float GetCircumference(void)
{
return 2*PI*m_fRadius;
}
inline float GetArea(void)
{
return 2*PI*m_fRadius*m_fRadius;
}
protected:
float m_centerX;
float m_centerY;
float m_fRadius;
const float PI;
};

int main(void)
{
CCirle a_cirle;
a_cirle.SetCenter(0.0,0.0);
a_cirle.SetRadius(15);

cout << "The cirle's circumference is " << a_cirle.GetCircumference() << endl
<< "The cirle's area is " <<