Dev-Cpp 5.11 是否支持 C++ 11?
Does Dev-Cpp 5.11 support C++ 11?
我努力在第一页 Google 上找到明确的答案。
我很难理解 "Language standard" 这个词。我的意思是,新标准应该在软件层面实施,对吧?这不仅仅是用户现在可以做的发现的事情列表,对吧?
我使用委托构造函数,收到警告:
[Warning] delegating constructors only available with -std=c++11 or -std=gnu++11
尽管事情似乎 以我希望的方式运作。这样的警告很重要吗?如果是这样,我该如何摆脱它?
Dev-Cpp 只是 IDE 编码器的(前端),其背后是 MinGW,GCC 4.9.2 作为编译器*。因此,每次单击 "Run" 或 "Build" 时,都是 GCC 来做肮脏的工作。 GCC 默认使用 C++03 标准,要使用更新的标准,您必须通过编译器标志 -std=c++11
明确告诉它。您可以在 Tools->Compiler Options->Settings->Code generation->Language standard (-std)
.
中更改它
我不确定为什么委托构造函数可以在没有 C++11 的情况下工作(可能是某些 GCC 功能),但可以肯定的是,如果没有 -std=c++11,您将无法使用 C++11 库。它还将摆脱警告。
(* 假设您使用默认的 Dev-C++ 安装程序。)
我努力在第一页 Google 上找到明确的答案。 我很难理解 "Language standard" 这个词。我的意思是,新标准应该在软件层面实施,对吧?这不仅仅是用户现在可以做的发现的事情列表,对吧? 我使用委托构造函数,收到警告:
[Warning] delegating constructors only available with -std=c++11 or -std=gnu++11
尽管事情似乎 以我希望的方式运作。这样的警告很重要吗?如果是这样,我该如何摆脱它?
Dev-Cpp 只是 IDE 编码器的(前端),其背后是 MinGW,GCC 4.9.2 作为编译器*。因此,每次单击 "Run" 或 "Build" 时,都是 GCC 来做肮脏的工作。 GCC 默认使用 C++03 标准,要使用更新的标准,您必须通过编译器标志 -std=c++11
明确告诉它。您可以在 Tools->Compiler Options->Settings->Code generation->Language standard (-std)
.
我不确定为什么委托构造函数可以在没有 C++11 的情况下工作(可能是某些 GCC 功能),但可以肯定的是,如果没有 -std=c++11,您将无法使用 C++11 库。它还将摆脱警告。
(* 假设您使用默认的 Dev-C++ 安装程序。)