/**
*
Title:
* 1--for_each()
* 2--vector V;
* 3--[](int n){}-----lambda表达式
*
Description:2013年5月18日12:14:26
*
Copyright: Copyright (c) 2013
*
Filename: T1_lambdaException.cpp
* @author ZTX
* @version 1.0
*/
#include "stdafx.h"
#include
#include
#include //提供了大量基于迭代器的非成员模版函数 eg:for_each
#include //Vector 是一个类模板。不是一种数据类型。 Vector是一种数据类型。
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
vector V;
for( int i=0;i<8;i++)
{
V.push_back(i);
}
for_each( V.begin(),V.end(),[](int n){//V.begin()注意括号,是成员函数,不是成员变量
//for_each()-----为序列中的每个元素应用指定的函数
//[](int n){}-----lambda表达式----[] 操作符是 lambda 导引符, 它告诉编译器一个 lambda 表达式开始了。 (int n) 是 lambda 参数声明,它告诉编译器不具名函数对象类的函数调用操作符带有哪些参数, { cout << n << " "; } 是复合声明,它是不具名函数对象类的函数调用操作符的函数体。不具名函数对象类的函数调用操作符默认返回 void。
cout<
if(n%2==0){
cout<
}else{
cout<
}
});
}