使用C++,定义一个函数,可灵活输出长度不同的矩形
时间: 2024-10-11 17:11:29 浏览: 39
在C++中,你可以定义一个通用的函数,它接受矩形的宽度和高度作为参数,并通过模板(template)实现多态性,使得它可以适应不同长度的矩形。下面是一个简单的示例:
```cpp
#include <iostream>
// 定义一个基础模板矩形类
template <typename T>
class Rectangle {
public:
T width;
T height;
// 构造函数
Rectangle(T w, T h) : width(w), height(h) {}
// 输出矩形的边长
void print() {
std::cout << "Rectangle with length " << width << " and breadth " << height << std::endl;
}
};
// 特化模板为整数类型的矩形
template <>
void Rectangle<int>::print() {
std::cout << "Integer Rectangle with length " << width << " and breadth " << height << " pixels" << std::endl;
}
int main() {
// 创建并输出不同类型和长度的矩形
Rectangle<double> rect1(5.0, 3.5); // 浮点型矩形
rect1.print();
Rectangle<int> rect2(10, 7); // 整型矩形
rect2.print();
return 0;
}
```
在这个例子中,`Rectangle`模板可以处理任意数据类型,当我们特化为`Rectangle<int>`时,就会使用特定于整数的输出格式。这展示了多态性如何允许你使用统一的接口(打印方法)处理不同类型的矩形。
阅读全文