c++ lambda表达式怎么使用

   2025-02-15 4910
核心提示:在C++中,lambda表达式用于创建匿名函数。它的语法如下:捕获列表 - 返回类型 { 函数体 }其中,捕获列表可以为空,参数列表和返

在C++中,lambda表达式用于创建匿名函数。它的语法如下:

捕获列表 -> 返回类型 { 函数体 }

其中,捕获列表可以为空,参数列表和返回类型可以省略,函数体可以是一个复合语句或单个表达式。

以下是一些使用lambda表达式的示例:

无捕获列表、无参数列表、无返回类型的lambda表达式:
[]() {    // 函数体}
捕获外部变量、有参数列表、有返回类型的lambda表达式:
int x = 5;auto func = [x](int y) -> int {    return x + y;};int result = func(3); // result = 8
捕获外部变量、无参数列表、推导返回类型的lambda表达式:
int x = 5;auto func = [x]() {    return x * 2;};int result = func(); // result = 10
捕获外部变量引用、有参数列表、推导返回类型的lambda表达式:
int x = 5;auto func = [&x](int y) {    x += y;};func(3); // x = 8

需要注意的是,lambda表达式可以被当做函数对象使用,可以直接调用或者作为参数传递给其他函数。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言