Lambda 捕获列表

Lambda 捕获列表提供了灵活的方式来指定 Lambda 函数体内可以访问的外部变量。以下是一些常见的 Lambda 捕获列表使用技巧:

  1. 值捕获:

    • [x, y]:通过值捕获指定的外部变量 xy
  2. 引用捕获:

    • [&x, &y]:通过引用捕获指定的外部变量 xy
  3. 混合捕获:

    • [x, &y]:通过值捕获 x,通过引用捕获 y
  4. 捕获所有变量(值捕获):

    • [=]:通过值捕获所有外部变量。
  5. 捕获所有变量(引用捕获):

    • [&]:通过引用捕获所有外部变量。
  6. 捕获所有变量(忽略某些变量):

    • [=, &x]:通过值捕获所有外部变量,但通过引用捕获变量 x
  7. 捕获外部变量后添加修改权限:

    • [x = 10, y]:通过值捕获 x,但允许修改 x 的副本。
  8. 捕获列表的类型推导:

    • [&a = x, b = y]:使用捕获列表中的初始化表达式进行类型推导。
  9. 省略捕获列表:

    • []:不捕获任何外部变量。在 Lambda 函数体内只能使用局部变量或全局变量。
  10. Lambda 函数体无参数:

    • [=]() { /* Lambda 函数体 */ }:在捕获列表中写 =,然后在括号中写参数列表为空。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值