C++中,已知矩形的长和宽, 设计类用来求矩形 的面积和周长。 要求设计不同的构造函 数完成对不同对象的构建。 在主函数中 定义该类对象, 完成对类的成员访 问.c++
时间: 2024-11-03 08:20:12 浏览: 6
在C++中,我们可以创建一个名为Rectangle的类,用于表示矩形并计算其面积和周长。首先,我们将定义一个类结构,包含长度(length)和宽度(width)的数据成员,以及相应的构造函数、成员函数(计算面积和周长)和友元函数(为了方便在主函数中直接访问)。以下是这个类的一个基本实现:
```cpp
#include <iostream>
class Rectangle {
private:
double length;
double width;
public:
// 构造函数,分别接收长和宽作为参数
Rectangle(double l, double w) : length(l), width(w) {}
Rectangle() {} // 默认构造函数,如果长度和宽度未给定,则默认值可能需要设定
// 计算面积
double getArea() const {
return length * width;
}
// 计算周长
double getPerimeter() const {
return 2 * (length + width);
}
// 友元函数,允许从外部直接访问面积和周长
friend std::ostream& operator<<(std::ostream& os, const Rectangle& rect) {
os << "Rectangle with length: " << rect.length << ", width: " << rect.width << "\n";
os << "Area: " << rect.getArea() << ", Perimeter: " << rect.getPerimeter();
return os;
}
};
int main() {
// 使用不同构造函数创建矩形对象
Rectangle rectangle1(5.0, 3.0); // 长度为5,宽度为3的矩形
Rectangle rectangle2; // 如果未提供参数,默认矩形(可能有默认初始值)
// 访问矩形的属性和操作
std::cout << "Rectangle 1:\n" << rectangle1 << "\n";
std::cout << "Rectangle 2:\n" << rectangle2 << "\n";
return 0;
}
```
在这个例子中,我们通过构造函数接收矩形的尺寸,`getArea()`和`getPerimeter()`方法用于获取面积和周长。`operator<<`是一个友元函数,使得矩形对象可以直接与`std::ostream`一起使用,方便打印信息。
阅读全文