C++14 中的泛型 lambda 表达式
在 C++11 中,引入了 lambda。Lambda 基本上是代码的一部分,可以嵌套在其他函数调用语句中。通过将 lambda 表达式与 auto 关键字结合使用,可以供以后使用。
在 C++14 中,这些 lambda 表达式得到改进。在这里我们可以得到泛型 lambda。例如,如果我们要创建可以加整数、加数字、还可以连接字符串的 lambda,那么我们必须使用这个泛型 lambda。
lambda 表达式的语法如下所示
[](auto x, auto y) { return x + y; }让我们看一个更好的示例。
示例
#include <iostream>
#include <string>
using namespace std;
main() {
auto add = [](auto arg1, auto arg2) { //define generalized lambda
return arg1 + arg2;
};
cout << "Sum of integers: " << add(5, 8) << endl;
cout << "Sum of floats: " << add(2.75, 5.639) << endl;
cout << "Concatenate Strings: " << add(string("Hello "), string("World")) << endl;
}输出
Sum of integers: 13 Sum of floats: 8.389 Concatenate Strings: Hello World
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP