- Rongsen.Com.Cn 版权所有 2008-2010 京ICP备08007000号 京公海网安备11010802026356号 朝阳网安编号:110105199号
- 北京黑客防线网安工作室-黑客防线网安服务器维护基地为您提供专业的
服务器维护
,企业网站维护
,网站维护
服务 - (建议采用1024×768分辨率,以达到最佳视觉效果) Powered by 黑客防线网安 ©2009-2010 www.rongsen.com.cn
作者:黑客防线网安C/C++教程基地 来源:黑客防线网安C/C++教程基地 浏览次数:0 |
这里,变量displayInput通过副本被捕捉。Visual C++编译器在编译时会报错C3491:'displayInput':一个在lambda函数内数值被改变的变量无法在一个非可变lambda中通过数值被捕捉。
Lambda函数中还有一个值得注意的地方,就是它的返回值类型。编译器一般会尽可能的(也是被要求的)推断lambda表达式的返回值类型,不过 对于复杂的多行表达式而言,有可能会需要确切的声明返回值类型。返回值类型声明通过在lambda函数参数和函数主体之间添加-﹥运行符以及需要被声明的 返回值类型来实现:
std::for_each(v.begin(), v.end(),
[&](int x)->void {total += x;});
}
C++中有了lambda函数,这令声明式编程以及使用STL运算法则变得更加简洁。Lambda函数允许在函数主体内的可执行代码字行间进行定义。在为 编译器提供强大的优化提示之外,Lambda函数所推崇的代码模式可以令人更加简单的理解哪段代码是要实现怎样的功能。Visual C++ 2010将带来在并行处理上的显著功能提升,而lambda函数将是具体实现这些提升的重要手段之一。
0 顶一下0 踩一下 |
我要申请本站:N点 | 黑客防线官网 | |
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479 |