zoukankan      html  css  js  c++  java
  • lambda表达式复习

    lambda
    可调用对象:对于一个对象或一个表达式,如果可以对其使用调用运算符,则称它为可调用的。

    四种可调用对象:函数和函数指针,重载了函数调用运算符的类,以及lambda表达式

    lambda可能定义在函数内部,一个lambda表达式具有如下形式:
    [capture list](parameter list) -> return type { function body }
    capture lis(捕获列表)是一个lambda所在函数中定义的局部变量的列表,lambda必须使用尾置返回来指定返回类型

    可以忽略参数列表和返回类型,但必须永远包含捕获列表和函数体
    如果忽略返回类型,lambda根据函数体中的代码推断出返回类型

    向lambda传递参数
    与普通函数不同,lambda不能有默认参数(即缺省值)

    使用捕获列表
    一个lambda可以出现在一个函数中,使用其局部变量,在其中提供一个以逗号分隔的名字列表

    被捕获的变量的值是在lambda创建时拷贝,而不是调用时拷贝

    默认情况下,对于一个值被拷贝的变量,lambda不会改变其值。如果希望改变,就必须在参数列表首加上关键字mutable。

    //lambda可以看成一个未命名的类,其中的捕获列表可以看成是数据成员

  • 相关阅读:
    android systembar tabletUI
    linux mv
    修改framework/base下面的api要注意要修改的地方
    git 从远程主服务器当中创建新分支
    修改android framework 添加service
    DUILIB 界面基本知识
    Duilib vlc c++ 字符编码
    android 应用APK使用系统APK
    linux 查找文件内容及文件
    修改android 开机动画
  • 原文地址:https://www.cnblogs.com/pixel-Teee/p/12241637.html
Copyright © 2011-2022 走看看