完善Square的定义,使得程序正确运行: 裁判测试程序样例: #include <iostream> using namespace std; // 请将答案填写在这里 int main() { int width1; cin >> width1; // 输入正方形的边长 Square<int> square1(width1); cout << square1.getArea() << endl; // 输出正方形的面积 double width2; cin >> width2; // 输入正方形的边长 Square<double> square2(width2); cout << square2.getArea() << endl; // 输出正方形的面积 return 0; }
时间: 2024-02-05 12:04:32 浏览: 235
#include <iostream> #include<iomanip> using namespace std;九九乘法表
完善Square的定义如下所示:
```cpp
template<typename T>
class Square {
private:
T width;
public:
Square(T w) : width(w) {}
T getArea() const { return width * width; }
};
```
在这个定义中,我们使用了模板来定义了一个Square类,这个类有一个私有属性width,表示正方形的边长。类中包含一个构造函数和一个成员函数getArea(),用来计算正方形的面积。构造函数使用传入的边长初始化width属性,而getArea()函数则直接返回width的平方值,即正方形的面积。
这个定义可以适用于不同类型的正方形,因为模板定义可以根据传入的类型自动实例化出对应类型的类。在程序中,我们可以通过Square<int>和Square<double>来分别创建整型和浮点型的正方形对象,并计算它们的面积。
阅读全文