c++编写一个函数对传过来的两个浮点数求和值和差值,并通过形参传送回调用函数
时间: 2024-10-29 09:14:19 浏览: 24
基于C++,写一个计算求和的函数模板,用户从键盘输入若干整数,以-1为结束标志,实现对用户输入的值进行求和,并返回求和结果
在C++中,你可以创建一个通用的函数模板,接受两个浮点数作为参数并提供一个函数指针类型的形参来接收结果处理。下面是一个简单的示例,这个函数模板名为`calculate`,它接受两个`float`类型的参数`a`和`b`,以及一个`std::function<void(float, float)>`类型的回调函数`callback`,用于计算并返回结果:
```cpp
#include <iostream>
#include <functional>
// 定义一个通用的函数模板,用于加法和减法操作
template <typename FuncType>
void calculate(float a, float b, FuncType callback) {
// 加法操作
float sum = a + b;
// 减法操作
float difference = a - b;
// 调用回调函数,传递结果
callback(sum, difference);
}
// 示例回调函数,这里打印结果
void print_results(float sum, float difference) {
std::cout << "Sum: " << sum << ", Difference: " << difference << std::endl;
}
int main() {
// 使用模板函数,并传入回调函数
calculate(5.0f, 3.0f, print_results);
return 0;
}
```
在这个例子中,我们创建了一个`print_results`函数,它会接收到计算出的和与差,然后打印出来。在`main`函数中,我们调用`calculate`函数,将`print_results`作为回调函数传入。
阅读全文