设计一个Point类,包含坐标x和y两个属性, 设计set、get函数和构造函数。设计一个矩形类Rectangle,其属性为左下角和右上角两个点的坐标,用Point的对象表示。设计构造函数及析构函数,以及计算面积和周长的成员函数area()和perim()。
class Point
{
public:
Point():_x(0),_y(0){}
Point(int x, int y):_x(x),_y(y){}
bool set(int x, int y)
{
_x = x;
_y = y;
return true;
}
bool get(int& x, int& y)
{
x = _x;
y = _y;
return true;
}
private:
int _x;
int _y;
};
class Rectangle
{
public:
Rectangle():_lb(),_rt(){}
Rectangle(Point lb, Point rt):_lb(lb),_rt(rt){}
int area()
{
return (_rt._x - _lb._x) * (_rt._y - _lb._y);
}
int perim()
{
return 2*(_rt._x - lb._x + _rt._y - lb._y);
}
private:
Point _lb;//leftbottom
Point _rt;//righttop;
};
不知道你这个问题是否已经解决, 如果还没有解决的话: