测试gcc 4.4的c++ 0x的新特性

来源:互联网 发布:通达信手机指标源码 编辑:程序博客网 时间:2024/05/22 15:00

测试gcc 4.4的c++ 0x的新特性

正像其他文章说的……加入了cbegin来返回const_iterator,并且可以使用auto了

下面的代码如果在c++03标准中,auto的部分就要这样写了:

vector::const_iterator ci = nums.cbegin();

但是0x重用了auto关键字,可以直接推到模板参数,非常便利……甚至便利性超过lambda的好特性阿……(误XD)

当然使用g++要增加–std=c++0x参数

#include
#include

using namespace std;

int main()
{
vector nums(3);
nums.push_back(1);
nums.push_back(2);
nums.push_back(3);

auto ci = nums.cbegin();

int sum = 0;
while(ci != nums.cend())
{
sum += *ci;
++ci;
}

cout<

return 0;
}

环境 Fedora 11,Gcc 4.4.0

测试中用eclipse写代码,auto的地方会认为出错,说明eclipse暂时还是无法辨认gcc 4.4的特性,但是加入–std=c++0x后不影响编译

 

 

绝不亚于垃圾的vs2010

原创粉丝点击