以下是一个示例,演示了如何使用Lambda表达式调用模板函数:
#include <iostream>
template <typename Func>
void ProcessData(int data, Func func) {
std::cout << "Processing data: " << data << " Result: " << func(data) << std::endl;
}
int main() {
int someData = 10;
// 使用Lambda表达式调用模板函数
ProcessData(someData, [](int x) { return x * 2; });
return 0;
}
在这个示例中,ProcessData是一个模板函数,其中第二个参数Func是一个函数对象类型。在main函数中,我们创建一个Lambda表达式[](int x) { return x * 2; },并将其作为第二个参数传递给ProcessData模板函数。