auto callbackFunc = [&](){backHome();
};

  • []符号,表示要开始一个lambda函数;
  • ()符号,里面填写函数的参数;

当想在lambda函数里使用外部的变量时需要指定变量捕获模式。

  在[]符号里加上指定的符号,就能指定变量捕获模式,常用的捕获模式如下:

  • [] ,不截取任何变量。
  • [&] , 截取外部作用域中所有变量,并且作为引用在lambda函数中使用,只要变量没有被释放,就可以在lambda函数中使用。但是局部变量不可以使用,因为局部变量会被释放。
  • [=] ,截取外部作用域中所有变量,并且作为引用在lambda函数中使用,只要变量没有被释放,就可以在lambda函数中使用,即使外部变量的值改变了,但是在lambda函数执行时,依旧是赋值时的值。
  • [=,&name] , 和[=]功能一样,但是对name变量使用引用(也就是[&]的方式)。
  • [name] , 和[=]功能一样,但是只针对name变量,其他忽略。

转载于:https://www.cnblogs.com/kingBook/p/5515328.html

更方便的函数回调——Lambda相关推荐

  1. Kotlin高阶函数及Lambda表达式实现接口回调

    文章目录 什么是高阶函数? Lambda 表达式 使用Kotlin高阶函数实现接口回调 Java中接口使用 Kotlin中接口使用 什么是高阶函数? 高阶函数是将函数作为参数或者返回值的函数. 特点 ...

  2. C#语法之匿名函数和Lambda表达式

    上一篇博客主要是对委托和事件做了一小结,这篇是在上一篇博客的基础上对匿名函数和Lambda表达式小结.还是接着上一篇说起,在上一篇中也说了委托是一种数据结构,主要是解决让函数作为参数的问题.在使用委托 ...

  3. 学习Kotlin(五)函数与Lambda表达式

    推荐阅读: 学习Kotlin(一)为什么使用Kotlin 学习Kotlin(二)基本语法 学习Kotlin(三)类和接口 学习Kotlin(四)对象与泛型 学习Kotlin(五)函数与Lambda表达 ...

  4. python函数结构_PYTHON 之结构体,全局变量,函数参数,lambda编程 等

    PYTHON 之结构体,全局变量,函数参数,lambda编程 ,generator(yield)使用以及如何自己构建switch结构 *********************** pass pass ...

  5. java中钩子函数回调函数_钩子函数 和回调函数

    标签: http://blog.csdn.net/lipeionline/article/details/6369657  转自 也可以这样,更容易理解:回调函数就好像是一个中断处理函数,系统在符合你 ...

  6. 内置函数与lambda匿名函数

    内置函数 all(iteralble) 如果可迭代对象内的所有元素的bool值为真,那么返回真,如果这个可迭代对象是空,也返回真. all([1,2,3,4]) # return True all([ ...

  7. Python中常用最神秘的函数! lambda 函数深度总结!

    今天我们来学习 Python 中的 lambda 函数,并探讨使用它的优点和局限性 Let's do it! 什么是 Python 中的 Lambda 函数 lambda 函数是一个匿名函数(即,没有 ...

  8. JavaScript箭头函数(Lambda表达式)

    箭头函数也叫lambda表达式 据说其主要意图是定义轻量级的内联回调函数 栗有: 1 var arr = ["wei","ze","yang" ...

  9. c语言中的钩子函数,回调函数以及钩子函数的概念

    钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统.每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权.这时钩子函数即可以加工处理(改变)该消息,也可 ...

最新文章

  1. 特殊标记字段(#)实时富文本显示
  2. 吉林推出百项政策扩开放
  3. Android应用开发—如何解决handler的警告:Handler Class Should be Static or Leaks Occur
  4. 依赖 netty spring_十分钟带你了解Spring的七大知识点,程序员必了解
  5. stl max函数_std :: max_element()函数以及C ++ STL中的示例
  6. Qt工作笔记-Qt仿大佬使用关键字(Q_DECL_OVERRIDE与override)
  7. 基于JAVA+SpringBoot+Mybatis+MYSQL的疫苗接种信息管理系统
  8. 计算机网络(1)--计算机网络和因特网
  9. 360浏览器在b站看直播html5,用360浏览器看Bilibili视频很卡怎么办_360浏览器看B站视频卡如何解决-win7之家...
  10. fckeditor for php 下载,fck_FCKeditor免费最新版下载[HTML编辑]-下载之家
  11. linux麦克风增强软件,如何在Windows,Mac,Linux中消除背景麦克风噪音
  12. 期货日内操作靠什么?拐点!
  13. setImageResource和setImageDrawable和setImageBitMap区别
  14. angular primeng table 非sortIcon排序
  15. 【Unity3D-UGUI应用篇】(六)屏幕自适应(多分配率适配)
  16. 计算机初级试卷,计算机初级试题及答案
  17. 元宇宙 vs. 数字孪生:技术演化的视角
  18. 手工脱壳之 FSG压缩壳【IAT反修复】
  19. Open3d GUI
  20. 【嵌入式硬件芯片开发笔记】4-20mA DAC芯片AD5421配置流程

热门文章

  1. HTML-通知公告Tips
  2. C++使用Windows API CreateMutex函数多线程编程
  3. [AWS vs Azure] 云计算里AWS和Azure的探究(2)
  4. Xshell5 提示要继续使用此程序,您必须应用最新的更新或使用新版本
  5. 利用java反射调用类的的私有方法--转
  6. 使用Capistrano向EC2部署Django代码--关于SSH相关的配置
  7. 监听列表事件的监控核心技术(编写代码)
  8. Dependence Injection
  9. MySQL ACID及四种隔离级别的解释
  10. TortoiseSVN配置管理使用详解