C++ lambda表达式

lambda表达式:

也可有几种简略声明

  • [capture list] (params list) {function body}
  • [](params list){function body}

lambda可嵌套使用

  • auto res=[i] () {return [=](int x) {return i*x;}(5)};

 

Lambda表达式中,如果以传值方式捕获外部变量,则函数体中不能修改该外部变量。可以使用mutable关键字说明,表达式体内的代码可以修改捕获的变量

  • [i] () mutable {return i++;} 

lambda表达式中的参数限制

  • 参数列表中不能有默认参数
  • 不支持可变参数
  • 所有参数必须有参数名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值