在 Code::Blocks 中启用 `-std=c++14` 标志
Enabling `-std=c++14` flag in Code::Blocks
我已经为 Windows 安装了 Code::Blocks 并且想要像通用 lambdas 一样编译 C++14 代码但是我从 [=13 安装的 Code::Blocks 的二进制版本=] 不支持标记
-std=c++14
.
如何更新编译器并为 Code::Blocks 启用 -std=c++14
标志?
要在 Code::Blocks 中使用 C++14 编译源代码,您首先需要下载并安装支持 C++14 功能的编译器。
以下是在 Windows 上的操作方法:
- 从 here (particular build) or from official site to
下载 MinGW
- 解压到例如:C:\(结果将是C:\MinGW)
- 打开Code::Blocks
- 转到设置 => 编译器。
- 转到“工具链可执行文件”。
- 在顶部字段“编译器的安装目录”中,将目录更改为解压缩编译器的目录。例如 C:\MinGW.
- 更改“程序文件”下的所有必要文件以匹配 C:\MinGW\bin:
下的文件
- 在点击“确定”之前,转到最左侧的选项卡“编译器设置”。
- Select“编译器标志”。
- 为简单起见,right-click 在列表中的某处和 select “新标志”:
- 输入以下内容并单击 "OK",然后勾选您刚刚创建的标志的框:
- 最后,您需要指定调试器路径。转到 "Settings" => "Debugger",单击 left-hand 侧的 "Default" 并输入可执行文件的新完整路径:
现在,尝试编译具有 C++14 特性的程序:
#include <iostream>
#include <string>
using namespace std;
auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });
cout << add_two("I"s, "t"s) << " works!" << endl;
}
能不能小白给个小建议?测试 C++14 代码的小修改,允许生成的 .exe 文件 运行 独立于创建它的 IDE,稍微修改的测试程序如下:
#include <iostream>
#include <string>
using namespace std;
auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });
cout << add_two("I"s, "t"s) << " works!" << endl;
cout << "press enter to continue..." << endl;
cin.ignore(10, '\n');
cin.get();
}
谢谢大家,祝所有编码员平安,尤其是 Igor Tandetnik。
我已经为 Windows 安装了 Code::Blocks 并且想要像通用 lambdas 一样编译 C++14 代码但是我从 [=13 安装的 Code::Blocks 的二进制版本=] 不支持标记 -std=c++14
.
如何更新编译器并为 Code::Blocks 启用 -std=c++14
标志?
要在 Code::Blocks 中使用 C++14 编译源代码,您首先需要下载并安装支持 C++14 功能的编译器。
以下是在 Windows 上的操作方法:
- 从 here (particular build) or from official site to
- 解压到例如:C:\(结果将是C:\MinGW)
- 打开Code::Blocks
- 转到设置 => 编译器。
- 转到“工具链可执行文件”。
- 在顶部字段“编译器的安装目录”中,将目录更改为解压缩编译器的目录。例如 C:\MinGW.
- 更改“程序文件”下的所有必要文件以匹配 C:\MinGW\bin: 下的文件
- 在点击“确定”之前,转到最左侧的选项卡“编译器设置”。
- Select“编译器标志”。
- 为简单起见,right-click 在列表中的某处和 select “新标志”:
- 输入以下内容并单击 "OK",然后勾选您刚刚创建的标志的框:
- 最后,您需要指定调试器路径。转到 "Settings" => "Debugger",单击 left-hand 侧的 "Default" 并输入可执行文件的新完整路径:
现在,尝试编译具有 C++14 特性的程序:
#include <iostream>
#include <string>
using namespace std;
auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });
cout << add_two("I"s, "t"s) << " works!" << endl;
}
能不能小白给个小建议?测试 C++14 代码的小修改,允许生成的 .exe 文件 运行 独立于创建它的 IDE,稍微修改的测试程序如下:
#include <iostream>
#include <string>
using namespace std;
auto main() -> int
{
auto add_two([](auto x, auto y){ return x + y; });
cout << add_two("I"s, "t"s) << " works!" << endl;
cout << "press enter to continue..." << endl;
cin.ignore(10, '\n');
cin.get();
}
谢谢大家,祝所有编码员平安,尤其是 Igor Tandetnik。