如何升级到 C++17?

How do I upgrade to C++17?

我使用 Atom 作为我的 IDE,我当前的 __cplusplus = 201402 是 C++14,我的编译器是 g++ (GCC) 9.2.0.

如何升级到 C++17 或 C++20?

我搜索的所有内容都涉及使用另一个 IDE(Microsoft Visual Studio)。

您不会“升级”到更新的 C++ 标准。
您可以将 编译器 升级到支持最新标准的更新版本。

截至今天,大多数编译器默认设置为 C++14。
要更改它,您需要在编译期间传递额外的参数。

例如,要使用适用于 C++17 的 GCC 编译 hello.cpp,您需要执行

g++ -std=c++17 hello.cpp

您需要检查如何在 IDE / 编辑器 / 构建系统中传递编译器标志(或设置标准)。


我不熟悉 Atom,但我发现 this:

In the settings, click on Packages, then search for gpp-compiler. You should see a settings button – click on it and edit the command line options to suit your needs.

自己动手:

#include <iostream>

int main(void) {
    std::cout << __cplusplus;

    return 0;
}

首先使用以下命令编译:

$ g++ -o main main.cpp && ./main

此后:

g++ -o main main.cpp -std=c++17 && ./main

您将了解其中的差异。 请注意,如果您无法使用 -std=c++20 标志,这显然意味着您的编译器不支持 C++20 标准。