本题目要求定义类模板实现2个数的最大值、最小值、加、减、乘、除等算术运算,在ma
时间: 2023-10-18 14:03:26 浏览: 152
实现此类功能的类模板,可以命名为"Arithmetic"。首先,我们需要在类模板中定义两个模板参数(数据类型)来表示操作数。类的构造函数需要接受两个参数,并将它们存储为私有成员变量。此外,类模板还需要定义用于计算最大值、最小值、加法、减法、乘法和除法的成员函数。以下是一个示例实现:
```cpp
template<typename T>
class Arithmetic {
private:
T a;
T b;
public:
Arithmetic(T arg1, T arg2): a(arg1), b(arg2) {}
T getMax() {
return (a > b) ? a : b;
}
T getMin() {
return (a < b) ? a : b;
}
T add() {
return a + b;
}
T subtract() {
return a - b;
}
T multiply() {
return a * b;
}
T divide() {
return a / b;
}
};
```
使用示例:
```cpp
#include <iostream>
using namespace std;
int main() {
Arithmetic<int> obj(5, 3);
cout << "Max: " << obj.getMax() << endl;
cout << "Min: " << obj.getMin() << endl;
cout << "Sum: " << obj.add() << endl;
cout << "Difference: " << obj.subtract() << endl;
cout << "Product: " << obj.multiply() << endl;
cout << "Quotient: " << obj.divide() << endl;
return 0;
}
```
以上示例中,我们使用`Arithmetic<int>`来实例化一个对象,并传递整数参数5和3。然后,我们调用类的不同成员函数来获取最大值、最小值、加法结果、减法结果、乘法结果和除法结果,并将其打印到控制台上。
注意:由于除法运算可能会引发除以零异常,所以在实际使用中,可能需要添加一些异常处理。此处的示例只是给出了一个基本的类模板实现,可以根据具体需求进行进一步修改和完善。
阅读全文