【发布时间】:2020-05-13 08:01:20
【问题描述】:
我想使用新的 C++20 <format> 标头。但是当我尝试#include它时,它显然不存在于我当前的标准库中。
我尝试使用 clang++ 和 g++,但它们都不起作用。
是的,我在 VSCode 的 tasks.json 文件中将 C++ 标准指定为“c++2a”。
我做错了什么?
【问题讨论】:
我想使用新的 C++20 <format> 标头。但是当我尝试#include它时,它显然不存在于我当前的标准库中。
我尝试使用 clang++ 和 g++,但它们都不起作用。
是的,我在 VSCode 的 tasks.json 文件中将 C++ 标准指定为“c++2a”。
我做错了什么?
【问题讨论】:
您可以在此处查看编译器支持的概述:https://en.cppreference.com/w/cpp/compiler_support
根据表格,截至今天(20 年 5 月 13 日 8:07),没有编译器支持 P0645R10:文本格式。
可以在这里找到专门针对 MSVS 的概述:https://docs.microsoft.com/en-us/cpp/overview/visual-cpp-language-conformance?view=vs-2019(尽管我没有在他们的列表中找到 <format>)。
【讨论】:
<format> 与 Boost::format 非常相似,我不会感到惊讶,并且可能您已经可以在那里找到大多数东西