1. 程序设计题:设计一个类CRectangle,除了有相关的数据成员外,该类还要求包含以下成员函数:矩形从一个位置移动到另一个位置的Move()函数;改变矩形大小的Size()函数;返回矩形左上角的坐标值的Where()函数;计算矩形面积的Area()函数。
时间: 2023-05-20 20:07:34 浏览: 82
好的,下面是我的回答。这是一个非常基础的面向对象编程题。您可以按照以下方式设计CRectangle类:
```
class CRectangle {
private:
int m_nLeft; // 矩形左上角x坐标
int m_nTop; // 矩形左上角y坐标
int m_nWidth; // 矩形宽度
int m_nHeight; // 矩形高度
public:
void Move(int nNewLeft, int nNewTop) {
m_nLeft = nNewLeft;
m_nTop = nNewTop;
}
void Size(int nNewWidth, int nNewHeight) {
m_nWidth = nNewWidth;
m_nHeight = nNewHeight;
}
void Where(int& nLeft, int& nTop) const {
nLeft = m_nLeft;
nTop = m_nTop;
}
int Area() const {
return m_nWidth * m_nHeight;
}
};
```
其中,Move()函数可以将矩形移动到指定位置,Size()函数可以改变矩形的大小,Where()函数可以获取矩形左上角的坐标值,Area()函数可以计算矩形的面积。
注意,在Where()函数中,由于需要返回两个值,我们采用了C++中的引用传参方式,这样可以实现在函数中同时返回多个值的效果。
这是一个简单的实现,您可以根据实际情况进行相应的修改和优化。
阅读全文