我正在使用Eclipse Kepler来开发C ++,最近我一直在使用C ++ 11,使用早期的线程(C++11 full support on Eclipse)我在Eclipse中配置了C ++ 11。 但我无法编译基本程序:
#include <array>
#include <iostream>
int main()
{
std::array<int, 3> arr = {2, 3, 5};
}
错误: 1./usr/lib/gcc/i686-pc-cygwin/4.9.2/include/c++/bits/c++0x_warning.h:32:2:错误:#error 文件需要编译器和库支持ISO C ++ 2011标准。此支持目前是实验性的,必须使用-std = c ++ 11或-std = gnu ++ 11编译器选项启用。 2. ../src/HelloWorld.cpp:19:5:错误:&#39;数组&#39;不是&#39; std&#39;
的成员但是当我从命令提示符运行时使用&#34; g ++ -std = gnu ++ 11 xyz.cpp&#34; ,它正在成功编译。
请帮助我如何让我的日食Kepler与C ++ 11一起使用。
答案 0 :(得分:3)
在Project Explorer上右键单击您的项目 - &gt;属性 - &gt; C / C ++ Build - &gt;设置。
在“工具设置”选项卡中,有一个GCC C ++编译器项。展开它并选择设置 - &gt; Miscesllaneous。
在Other Flags文本的末尾附加输入字符串-std = c ++ 11
这应该针对您需要的任何配置完成。
答案 1 :(得分:3)
Paolo M的回答是正确的,以便在每个项目的基础上打开c ++ 11。 您也可以默认为所有项目启用c ++ 11(或任何标准)。
Preferences > C/C++ > Build > Settings > 'Discovery' tab
选择您的编译器(例如CDT GCC内置编译器设置MinGW)并添加-std=c++11
选项。
结果可能看起来像${COMMAND} ${FLAGS} -std=c++11 -E -P -v -dD "${INPUTS}"