C++编写一个程序,已知矩形的长和宽,设计类用来求矩形的面积和周长。要求设计不同的构造函数完成对不同对象的构建。在主函数中定义该类对象,完成对类的成员访问。
时间: 2024-11-03 22:20:21 浏览: 12
在C++中,我们可以创建一个名为`Rectangle`的类来表示矩形,并提供两个构造函数分别接收矩形的长度和宽度作为参数。以下是相应的代码:
```cpp
#include <iostream>
class Rectangle {
public:
// 构造函数1,接受单独的宽度作为参数,默认长度为0
Rectangle(double width) : length(0), width(width) {}
// 构造函数2,同时接受长度和宽度作为参数
Rectangle(double length, double width) : length(length), width(width) {
if (length <= 0 || width <= 0) {
std::cerr << "Length and width must be positive." << std::endl;
}
}
// 计算并返回矩形的面积
double getArea() const {
return length * width;
}
// 计算并返回矩形的周长
double getPerimeter() const {
return 2 * (length + width);
}
private:
double length; // 矩形的长度
double width; // 矩形的宽度
};
int main() {
// 使用构造函数1创建一个默认宽度的矩形
Rectangle rect1(5); // 长度默认为0
std::cout << "Rect1 area: " << rect1.getArea() << ", perimeter: " << rect1.getPerimeter() << std::endl;
// 使用构造函数2创建一个具体的矩形
Rectangle rect2(4, 6);
std::cout << "Rect2 area: " << rect2.getArea() << ", perimeter: " << rect2.getPerimeter() << std::endl;
return 0;
}
```
在这个例子中,我们创建了两个构造函数,一个是只接收宽度,另一个是接收长度和宽度。`getArea()`和`getPerimeter()`方法用于计算并获取矩形的面积和周长。在`main`函数中,我们展示了如何通过这两个构造函数创建并操作`Rectangle`对象。
阅读全文