C++ Lambda 表达式
Lambda 表达式是 C++11 引入的一个非常强大的特性,它允许定义匿名函数(即没有名称的函数)。它们通常用于封装传递给算法或异步方法的少量代码。
基本语法
[capture](parameters) -> return_type { body }
- [capture]: 捕获列表,定义 Lambda 可以访问外部作用域中的哪些变量。
[]: 不捕获任何变量。[=]: 按值捕获所有外部变量。[&]: 按引用捕获所有外部变量。[x, &y]: 按值捕获 x,按引用捕获 y。
- (parameters): 参数列表,与普通函数类似。
- -> return_type: 返回类型(可选,编译器通常能自动推断)。
- { body }: 函数体。
实例
int factor = 10;
auto multiplier = [factor](int n) {
return n * factor;
};
运行结果 / 调试信息
等待编译...
本节课暂无动态演示