lambda函数

1.lambda函数

其实就是匿名函数,和匿名对象有异曲同工之妙

[capture](params)opt->ret{body;}

captures: 捕获外部的变量
= 捕获所有变量的拷贝作为副本,不可以修改
& 捕获所有变量的引用
a 捕获a的拷贝
&b 捕获b的引用
(c,&d) 捕获c的值,d的引用

params 函数的参数
opt 可选项
exception 可以抛出异常
mutable 可以修改副本
ret 返回值 可以不写
body 函数体

2.简单用法举例

//定义一个匿名函数并且直接调用它
[](int a)->int{return a++;}(100);
//为函数对象赋值,空的函数
function<void()> cb=[](){};
//auto推导出函数
auto cb=[&](int a){body;};

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值