2013-02-14 91 views
17

我正在使用Netbeans 7.2,并使用Cygwin安装程序下载了GCC 4.7。我还将这些目录添加到我的PATH中,并且我相信在NetBeans中正确配置了这些设置。无论我做什么,我都会收到错误: -std = C++ 11无法识别。在Netbeans中配置C++ 11

这条线,从我需要使用源代码,特别是导致问题:

using size_type = long unsigned int; 

这是专门针对C++语法11?

回答

27

随着GCC 4.7.2,如果你使用-std它编译= C++ 11

C:\Users\ferenc>type using_test.cpp 
#include <iostream> 

using size_type = long unsigned int; 

int main(int argc,char* argv[]) 
{ 
     std::cout<<sizeof(size_type)<<std::endl; 
     return 0; 
} 

C:\Users\ferenc>g++ -std=c++11 using_test.cpp 

C:\Users\ferenc>a.exe 
4 

C:\Users\ferenc> 
  1. 确保您所指出的NetBeans到正确的MinGW的版本。 要做到这一点,去Project Properties>Build>Tool Collection>...>Tool Collection Manager和 那里你可以设置路径,以正确的G ++版本。

  2. 请确保您已设置了正确的编译器选项:

    Project Properties>Build>C++ Compiler>

    Compilation Line>Additional Options

    将其设置为:-std=c++11

+0

如何使c + + 11默认? – Pavel 2016-09-07 16:03:26

4

简单的步骤:

  1. 打开项目
  2. 文件菜单>项目属性
  3. 在构建> C++编译器> C++标准> C++ 14/C++ 11