简述一下C++11 中 Lambda 新特性

  • C++ 11 中的 Lambda 表达式用于定义并创建匿名的函数对象,用来简化编程工作。

  • Lambda 的语法形式:

    1

    [捕获列表] (参数列表) -> 返回值类型 { 函数体 };

    • [捕获列表]:这部分是捕获区,用于捕获外部变量,标识一个 Lambda 表达式的开始,不能省略

      • 捕获列表为空:不捕获外部变量
      • =:表示值传入
      • &:表示引用传入

      1

      2

      3

      4

      5

      [a]:将 a 按值进行传递

      [&a]:将 a 按引用进行传递。

      [a,&b]:将 a 按值传递,b 按引用进行传递。

      [=,&a,&b]:除 a 和 b 按引用进行传递外,其它参数都按值进行传递。

      [&,a,b]:除 a 和 b 按值进行传递外,其它参数都按引用进行传递。

    • (参数列表):同函数参数列表

    • -> 返回值类型:这部分如果返回值为 void,可以省略

    • { 函数体 }:同函数的函数体

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值