zoukankan      html  css  js  c++  java
  • c++11 Lambda

    基本写法

    [capture list] (params list) mutable exception-> return type { function body }
    

    capture list:捕获外部变量列表
    params list:形参列表
    mutable指示符:用来说用是否可以修改捕获的变量
    exception:异常设定
    return type:返回类型
    function body:函数体

    省略写法

    [capture list] (params list) -> return type {function body}
    [capture list] (params list) {function body}
    [capture list] {function body}
    

    外部变量

    [a]{} //值捕获
    [&a]{}  //引用捕获
    [=]{} 隐式捕获
    
    捕获形式 说明
    [] 不捕获任何外部变量
    [变量名, …] 默认以值得形式捕获指定的多个外部变量(用逗号分隔),如果引用捕获,需要显示声明(使用&说明符)
    [this] 以值的形式捕获this指针
    [=] 以值的形式捕获所有外部变量
    [&] 以引用形式捕获所有外部变量
    [=, &x] 变量x以引用形式捕获,其余变量以传值形式捕获
    [&, x] 变量x以值的形式捕获,其余变量以引用形式捕获

    参数限制:

    参数列表中不能有默认参数
    不支持可变参数
    所有参数必须有参数名

  • 相关阅读:
    C语言|博客作业08
    C语言|博客作业04
    C语言|博客作业02
    C语言|博客作业06
    C语言|博客作业03
    第一周作业
    C语言|博客作业05
    C语言|博客作业07
    C语言|博客作业09
    为什么get比post更快
  • 原文地址:https://www.cnblogs.com/WillingCPP/p/14510000.html
Copyright © 2011-2022 走看看