【发布时间】:2020-08-07 10:32:57
【问题描述】:
我正在使用 mingw 在 Windows 10 上运行 g++ 编译器。 在 cmd 检查编译器版本时,我得到以下信息:
g++ --version- g++ (MinGW.org GCC Build-2) 9.2.0
与c++ --version相同
当我编译一个使用结构化绑定的 cpp 程序时,我收到了一个警告:
warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
但除此之外,代码运行良好。 每个人都收到此警告还是我运行的是较低版本的编译器?
我正在使用扩展程序 - 竞争性编程助手,此警告会中断进程。 因此,如果每个人都收到此警告,有没有办法我可以只阻止特定于版本的警告而不必阻止所有编译器警告。
TIA。
【问题讨论】:
-
编译器选择与 C++17 不同的默认标准。因此,您必须手动将
-std=c++17作为命令行标志传递(或相应地配置您的构建)。请参阅this thread,了解如何了解默认情况下的实际标准。