我已经在Windows上安装了Code::Blocks,并希望编译像泛型lambda这样的C++14代码,但我从codeblocks.org下载并安装的二进制版本不支持标志< br>-std=c++14
。
我该如何更新编译器并为Code::Blocks启用-std=c++14
标志?
我已经在Windows上安装了Code::Blocks,并希望编译像泛型lambda这样的C++14代码,但我从codeblocks.org下载并安装的二进制版本不支持标志< br>-std=c++14
。
我该如何更新编译器并为Code::Blocks启用-std=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;
}
-std=c++14
添加到从C构建中排除的标志列表中。否则,构建.c
文件将获得该标志,从而导致警告。然后,您将项目设置为同时具有-std=c++14 -std=c11
。 - M.Mchar *m_data = new char[14]{ "Hello, World!" };
不过这行代码在VS 2015上可以编译通过。 - user2165一个谦虚的新手能否提出一个小建议?对测试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。