c++11学习笔记之lambda表达式
来源:互联网 发布:sql查询语句去掉重复 编辑:程序博客网 时间:2024/06/01 15:35
【说明】
lambda表达式是一个可调用的代码单元,类似与一个未命名的内联函数。
lambda表达式的形式如下:
[capture list](parameter list) -> return type { function body }
lambda表达式可以简化代码的编写,对于只使用一次的小函数,试试使用lambda表达式来精简吧。
【使用】
最简单的例子:
auto f = []{ return 42; };cout << f() << endl;
//查找字符串列表中第一个大于等于3个字符长度的字符串vector<string> words = { "aa", "bbb", "ni", "boys" };int sz = 3;auto wc = find_if(words.begin(),words.end(),[sz](const string &a) -> bool{return a.size() >= sz;});cout << *wc << endl;
其中[capture list]传入了函数外面的sz,然后才能在函数里面使用。如果要捕获外面的全部变量可以使用[=]或[&],分别表示隐式值捕获和隐式引用捕获。
(parameter list)为参数const string &a,由标准库算法find_if负责调时传入用。
-> return type 返回类型为bool,一般只有一个return的编译器可以自动推断类型,可以不用写。
0 0
- C++11 学习笔记 lambda表达式
- C++11 学习笔记 lambda表达式
- C++11 学习笔记 lambda表达式
- c++11学习笔记之lambda表达式
- C++11学习笔记之Lambda表达式
- (转)C++11 学习笔记 lambda表达式
- C sharp 泛型 lambda表达式学习笔记
- 闭包,lambda表达式之学习笔记
- Java8学习笔记之Lambda表达式
- Lambda表达式学习笔记
- C++11学习笔记4---lambda表达式
- 黑马程序员之C#学习笔记: Lambda表达式学习总结
- 学习语言集成查询--Linq之Lambda表达式学习笔记
- C#学习笔记(一):泛型、lambda表达式和linq
- lambda表达式的学习笔记
- C#学习笔记 lambda表达式
- C++ Lambda表达式 学习笔记
- lambda表达式学习笔记二
- linux make menuconfig 执行流程小结
- [Qt]在不开启事件循环的线程中使用QTimer
- 用汇编语言角度来理解C语言的一些问题
- WPF: RenderTransform特效
- ArcGIS地理数据库是否支持Oracle的RAC和TAF
- c++11学习笔记之lambda表达式
- 多媒体音量控制setVolumeControlStream(int streamType)
- 快速排序C实现
- Flex操作简单易学容易上手
- linux 常用命令
- 世界之窗收藏夹
- java定义内部类
- spring 于mongodb整合
- 在Cocos2dx项目中嵌入百度推广广告SDK