您的位置:首页 > 编程语言 > C语言/C++

C++11 Lambda函数(匿名函数)

2014-06-04 08:37 169 查看
 C++11引入了lambda表达式,使得程序员可以定义匿名函数,该函数是一次性执行的,既方便了编程,又能防止别人的访问。Lambda表达式的语法通过下图来介绍:Lambda表达式的引入标志,在‘[]’里面可以填入‘=’或‘&’表示该lambda表达式“捕获”(lambda表达式在一定的scope可以访问的数据)的数据时以什么方式捕获的,‘&’表示一引用的方式;‘=’表明以值传递的方式捕获,除非专门指出。Lambda表达式的参数列表Mutable 标识异常标识返回值“函数”体,也就是lambda表达式需要进行的实际操作   
// lambda.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>using namespace std;int _tmain(int argc, _TCHAR* argv[]){int x = 10,y = 3,z;z = [=]() mutable throw() -> int { int n = x + y; x = y; y = n; return n; }();cout << z << endl;cout << "x:" << x << "\t" << "y:" << y << endl;return 0;}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: