C++11的捕获列表举例分析
发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,本篇内容主要讲解"C++11的捕获列表举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++11的捕获列表举例分析"吧!值捕获先看如下代码:int
千家信息网最后更新 2024年12月12日C++11的捕获列表举例分析
本篇内容主要讲解"C++11的捕获列表举例分析",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C++11的捕获列表举例分析"吧!
值捕获
先看如下代码:
int factor = 2;
auto multiply = [factor](int value)
{return factor * value;};
factor = 4;
cout << multiply(2) << endl;
代码中首先为factor赋值2,创建lambda表达式以后,再次赋值4。由于lambda表达式的捕获是在该表达式创建是进行的,而第二次赋值在lambda表达式创建之后,所以muliply(2)的执行结果为4。
引用捕获
还是这段代码,只要在捕获列表中变量的前面多了一个&,就变成了引用捕获。
int factor = 2;
auto multiply = [&factor](int value)
{return factor * value;};
factor = 4;
cout << multiply(2) << endl;
捕获的时机并没有变化,只是捕获的是factor的引用而不是factor的值,所以定义lambda之后,对factor再次赋值4依然会影响multiply(2)的结果。此时的输出为8。
隐式捕获
前面例子中使用捕获列表时,具体指定了变量名,属于显式捕获。另外还有隐式捕获,由lambda表达式推断需要捕获的变量。具体方法是:
当需要隐式值捕获时,使用[=];
当需要隐式引用捕获时,使用[&];
在上面例子中使用隐式捕获以后,结果不会发生变化。
到此,相信大家对"C++11的捕获列表举例分析"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
表达式
分析
代码
变量
结果
例子
内容
再次
方法
变化
学习
实用
更深
兴趣
只是
实用性
实际
操作简单
时机
是在
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
铁西区软件开发培训班
数据库跨服务器索引没作用
2d捕鱼王软件开发商
华泰人寿软件开发工资高不高
数据库讲座 报道
龙井市档案馆网络安全整改项目
江津区网络软件开发服务代理商
净网2021网络安全小贴士
poslabel数据库
成都银基网络技术有限公司
服务器信息有哪些类型
网络安全攻防演习工作国税局
怎么远程删手机数据库
99围棋软件开发商
软件开发计划ppt
人员与网络安全
软件开发常识
湖北串口服务器多少钱
方德高可信服务器操作系统下载
如何甄别正确的dhcp服务器
网络安全社会焦点
轩仪互联网科技有限公司
房地产公司搞软件开发
开启手机找回时连接不上服务器
todo 软件开发
阿里网络技术 面试题
电脑怎么让数据库运行
无锡软件开发定制
内江网络安全大学
软件开发缺口多少人