首页 > 其他分享 >Lambda函数

Lambda函数

时间:2022-10-21 22:13:43浏览次数:52  
标签:函数 局部变量 参数 引用 返回值 Lambda

什么是Lambda函数

Lambda函数也叫Lambda表达式,是匿名函数,就是没有名字的函数,和传统的函数不一样。Lambda表达式是C++11中引入的新概念,用于定义并创建匿名的函数对象。首先看下Lambda表达式的基本结构。

[捕捉列表] (参数) mutable ->返回值类型 {函数体}

 

1、 [ ],标识一个,Lambda匿名函数的开始,这个必须有,不能省略,函数对象参数是传递给编译器自动生成的函数对象类的构造函数的。函数对象参数只能使用到Lambda定义为止Lambda所在的作用域范围内可见的局部变量,包括Lambda所在类的this。函数对象参数有以下形式

a)       空,没有使用任何的函数对象参数

b)       =,函数体内使用Lambda所在范围内的可见局部变量包括所在类的this的传值方式,相当于编译器给Lambda所在地的所有局部变量复制一份给Lambda函数

c)        &,函数体内使用Lambda所在范围内的可见局部变量包括所在类的this的引用方式,相当于编译器给Lambda所在地的所有局部变量引用一份给Lambda函数

d)       this,函数体内可以使用Lambda所在内的成员变量

e)       a,不是字母,而是指具体一个变量a,那么Lambda内拷贝一个a使用

f)         &a,Lambda内引用a

g)       a,&b,拷贝a,引用b

h)       =,&a,&b,除ab引用,其余拷贝

i)         &,a,b。除ab拷贝,其余引用

2、 函数参数,这个跟常规函数一样。

3、 mutatble,修改关键字,再对应位置mutatble关键字,才能修改函数对象参数。否则报错。可以有,也可以没有,但有才能修改。lambda默认是const,也就是不能修改本地变量。

4、 ->return-type返回值的方式,既然是函数就可能有返回值,那么->就是有返回值的函数标志。

5、 函数体,跟常规函数一样。

标签:函数,局部变量,参数,引用,返回值,Lambda
From: https://www.cnblogs.com/Athenavi/p/16814933.html

相关文章

  • 3.Python 注释和函数使用
    注释三总:单行注释直接#+内容多行注释三个单引号括起来的内容指定编码注释可以指定文件的中文编码例:#作者:咸瑜#代码时间:2022/10/1715:57''''多行注......
  • 致敬Excel基础函数(20):Datestring函数和Datevalue函数
    1概念Datestring函数的定义:将对应的日期转换为“年月日”的形式。Datevalue函数的定义:返回以字符串所表示的日期值所对应的序列号。2语法Datestring函数语法:​=DATESTRING(......
  • MySQL 函数 function
    函数内置函数function字符串--常用函数串操作函数set@str='hello中国';select@str,length(@str),char_length(@str),character_length(@str),reverse(@str);......
  • 函数的单调性
    函数的单调性\[定理1.设函数f(x)在[a,b]上连续,在(a,b)上可导\\(1)如果在(a,b)内f'(x)\geq0,且等号仅在有限多个点处成立,则函数f(x)在[a,b]上单调增加\\(2)如果再(a,b)......
  • 09-JS函数入门总结
    JS函数简单入门知识点总结1.1函数的概念函数:为完成一个操作任务而组合在一起的的语句组,实现了程序的三大逻辑(顺序、分支和循环)1.2函数的作用减少重复的代码,方便......
  • JUnit测试单元进行函数测试时不能使用Scanner的解决方案
    方案一:1.在idea的安装目录里面的bin目录下找到 idea64.exe.vmoptions 文件2.编辑该文件,在文件末尾加上如下指令-Deditable.java.test.console=true 3.重启i......
  • 欧拉函数
    欧拉函数的几个性质及证明定义\(\varphi(n)\)表示在\(1\)~\(n\)中与\(n\)互质的数计算式及计算方法若n根据算术基本定理分解为\(n=p_1^{c_1}p_2^{c_2}...p_m^{c_m}\)......
  • Python教程:Python函数和Python闭包
    原文链接:https://www.codevoila.com/post/51/python-tutorial-python-function-and-python-closure PythonfunctionsbeyondbasicsandadeeplookatclosureinPy......
  • vue中执行异步函数async和await的用法
    一、async基础用法async函数,会返回一个promise对象,可以用.then调用async函数中return的结果asyncfunctionhelloAsync(){return"返回结果";}con......
  • Work with AWS VPC, Lambda and Internet
    AWSVPCmeansaVLANforauser,theallpotentialnetworkresourcemightallocatedwithinthisVLANwithprivateIPaddresses,suchasEC2,EFSetc.Thereis......