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

g++能使用c++11特性的问题

2017-06-27 19:37 141 查看
今天遇到一个问题,就是关于g++版本的问题

一般来说g++5.0以上的版本就支持c++11的特性了,但是对于一些如
auto iter = find(......);

function<int (int)> Func = [](int i){return i;};


编译的时候会弹出iter is not name a type

main.cpp: In function ‘int main()’:

main.cpp:26:5: error: ‘function’ was not declared in this scope

function<int(int)> Func = [](int i){return i;};

     ^

main.cpp:26:14: error: expected primary-expression before ‘int’

     function<int(int)> Func = [](int i){return i;};

              ^

main.cpp:27:21: error: ‘Func’ was not declared in this scope

     int res = Func(1);

还有就是function也不是被识别,所以就查了一下,找到了原因

在使用g++编译文件的时候,添加一些参数即可

g++ -std=c++11 main.cpp -o a.out
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: