(软件构造)lambda

c++引入匿名函数,原旨在让用户将函数作为参数,因为函数有个返回值;典型的lambda是个测试表达式或者比较表达式,一般附带一个return语句

示例

[需要捕获使用的变量](形参列表){函数体}//这是函数的定义和声明
解释如下
    需要捕获使用的变量:可以访问作用域内任何动态变量;
    	& : 按引用访问作用域内任何动态变量
    	= :按值访问作用域内任何动态变量
    	my_temp : 按值访问my_temp
    	&my_temp : 按引用访问my_temp
    	=,&my_temp:按值访问作用域内任何动态变量,按引用访问my_temp
    	以及其他的一些组合;
    形参列表:
    	正常函数形参,例如int x;
    函数体:
    	正常函数体
    
    
    值得注意的是,lambda函数示例没有返回值类型声明,这只适用于函数体仅有一条return语句时,这时采用自动类型判断,当没有return时,自动判断为void
    如果不止一条语句,需要使用返回类型后置语法
    例如
    [](int x)->int{
    x = x+1;
    return x;}

lambda函数的使用

一、[需要捕获使用的变量](形参列表){函数体}(实参列表)
二、auto f =  [需要捕获使用的变量](形参列表){函数体};
    f(实参列表)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LRY01127

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值