程序设计题:设计一个类CRectangle,除了有相关的数据成员外,该类还要求包含以下成员函数:矩形从一个位置移动到另一个位置的Move()函数;改变矩形大小的Size()函数;返回矩形左上角的坐标值的Where()函数;计算矩形面积的Area()函数。 主函数怎么写
时间: 2023-05-20 15:07:38 浏览: 93
以下是 CRectangle 类的完整代码,包括相关的数据成员和各个成员函数:
```cpp
class CRectangle {
public:
int x1, y1, x2, y2;
// 移动矩形到新的位置
void Move(int dx, int dy) {
x1 += dx;
y1 += dy;
x2 += dx;
y2 += dy;
}
// 修改矩形的大小
void Size(int width, int height) {
x2 = x1 + width;
y2 = y1 + height;
}
// 返回矩形左上角的坐标
std::pair<int, int> Where() const {
return std::make_pair(x1, y1);
}
// 计算矩形的面积
int Area() const {
return (x2 - x1) * (y2 - y1);
}
};
```
在主函数中,我们可以这样使用 CRectangle 类:
```cpp
int main() {
// 创建一个矩形对象,左上角坐标为 (0, 0),右下角坐标为 (5, 5)
CRectangle rect;
rect.x1 = 0;
rect.y1 = 0;
rect.x2 = 5;
rect.y2 = 5;
// 移动矩形到新的位置
rect.Move(2, 3);
// 修改矩形的大小
rect.Size(8, 6);
// 输出矩形左上角的坐标和面积
auto [x, y] = rect.Where();
int area = rect.Area();
std::cout << "矩形左上角坐标为 (" << x << ", " << y << ")" << std::endl;
std::cout << "矩形的面积为 " << area << std::endl;
return 0;
}
```
输出结果为:
```
矩形左上角坐标为 (2, 3)
矩形的面积为 48
```
注意,上述代码只是示例,实际应用中可能需要根据具体场景修改类的成员变量和成员函数定义。
阅读全文