前言
很多语言都有lambda, c++自然不能缺, 在c++11里面加入了, 是程序猿喜欢的语法糖, 便于阅读, 也便于理解. 当然, 它有很多相关概念, 这里尽可能展开说....参数捕获
捕获形式 说明
[] 不捕获任何外部变量
[var1,var2, …] 默认以值得形式捕获指定的多个外部变量(用逗号分隔)
[this] 以值的形式捕获this指针
[=] 以值的形式捕获所有外部变量..., y, z是引用传递, 值传递实际上是不能修改的, 但是这里加了mutable, 所以可以在函数体内进行改动....function
然后你会发现一个问题, 我这里写的都是auto, 那具体是什么呢?...std::function是一个可调用对象包装器,是一个类模板,可以容纳除了类成员函数指针之外的所有可调用对象,它可以用统一的方式处理函数、函数对象、函数指针,并允许保存和延迟它们的执行。