使用c++ 已知矩形的长和宽,设计类用来求矩形的面积和周长。要求设计不同的构造函数完成对不同对象的构建。在主函数中定义该类对象,完成对类的成员访问。
时间: 2024-10-23 19:07:46 浏览: 28
在 C++ 中,我们可以创建一个名为 `Rectangle` 的类,它包含长度(length)和宽度(width)作为数据成员,并提供相应的构造函数、成员函数(用于计算面积和周长)。下面是这个类的设计示例:
```cpp
#include <iostream>
class Rectangle {
private:
double length;
double width;
public:
// 构造函数,接受默认值
Rectangle() : length(0), width(0) {}
// 构造函数,接受特定长度和宽度
Rectangle(double l, double w) : length(l), width(w) {
if (l <= 0 || w <= 0) {
std::cerr << "Invalid dimensions! Length and width must be positive." << std::endl;
}
}
// 计算面积的方法
double getArea() const {
return length * width;
}
// 计算周长的方法
double getPerimeter() const {
return 2 * (length + width);
}
// 主函数中对该类的使用
static void mainFunction() {
// 创建一个默认构造的矩形对象
Rectangle defaultRect;
std::cout << "Default rectangle: Area = " << defaultRect.getArea() << ", Perimeter = " << defaultRect.getPerimeter() << std::endl;
// 创建一个具有特定尺寸的矩形对象
Rectangle customRect(5.0, 3.0);
std::cout << "Custom rectangle: Area = " << customRect.getArea() << ", Perimeter = " << customRect.getPerimeter() << std::endl;
}
};
int main() {
Rectangle::mainFunction();
return 0;
}
```
在这个例子中,我们有两组构造函数,一个是默认的无参构造函数,另一个是有参的,用于初始化具体的矩形大小。`getArea()` 和 `getPerimeter()` 是两个静态成员函数,它们可以在任何类的对象上调用,而不必先创建对象实例。
阅读全文