用c++创建一个函数模板可以实现整数的除法和浮点数的除法。如果除数为0可以给出错误提示。
时间: 2023-07-16 16:14:58 浏览: 141
汇编+C实现浮点数除法运算
4星 · 用户满意度95%
可以使用函数模板和异常处理来实现这个功能,以下是一个示例代码:
```cpp
#include <iostream>
#include <stdexcept>
template<typename T>
T divide(T numerator, T denominator) {
if (denominator == 0) {
throw std::invalid_argument("error: denominator cannot be zero.");
}
return numerator / denominator;
}
int main() {
int a = 10, b = 2;
float c = 3.14, d = 0.0;
try {
std::cout << "a / b = " << divide(a, b) << std::endl;
std::cout << "c / d = " << divide(c, d) << std::endl; // will throw an exception
}
catch (std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
```
这个函数模板接受两个类型相同的参数,并返回它们的商。如果除数为0,就会抛出一个`std::invalid_argument`异常。在`main`函数中,我们可以使用`try-catch`语句来捕获这个异常并输出错误信息。
阅读全文