c++ 简化版lambda的介绍

lambda表达式,也叫匿名函数,本质上就是一个函数,只是这个函数没有名字。函数没有名字有什么好处呢?写得比较快啊。

【需要注意发音,这个单词lambda中间的b是不发音的。】

lambda表达式的完整形式很长很繁杂,实际应用中不可能用得太繁杂。因为又繁杂又没有函数名字会造成理解上的困难,没有必要了。

常见的简化版的lambda表达式有三个要素:中括号、小括号、大括号

[](){}

中括号表示外部变量的传递方式。小括号表示参数。大括号表示语句。举个例子,比如我想写一个函数,返回一个已知变量m的n倍的值。这里的m就是外部变量,n则是参数。

int m = 10;
auto func2time = [=](int n){return m*n; }; 
printf("m*2=%d", func2time(2));

中括号里面的等号表示m是以值传递的方式进行传递。return暗示了这个lambda表达式是有返回值的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值