10

我有一个应该用符合 C++98 的代码编写的学校作业。如何强制g++只接受遵循此标准的代码?会-std=c++98做的伎俩还是我需要添加额外的标志?

4

1 回答 1

14

根据GCC 关于标准的文档

最初的 ISO C++ 标准作为 ISO 标准 (ISO/IEC 14882:1998) 发布,并由 2003 年发布的技术勘误表 (ISO/IEC 14882:2003) 进行了修订。这些标准分别称为 C++98 和 C++03。GCC 实现了 C++98 的大部分内容(导出是一个明显的例外)和 C++03 中的大部分更改。要在 GCC 中选择此标准,请使用选项 -ansi、-std=c++98 或 -std=c++03 之一;要获得标准所需的所有诊断,您还应该指定 -pedantic(或 -pedantic-errors,如果您希望它们是错误而不是警告)。

因此,您应该指定-std=c++98 -pedantic是否真的要确保符合标准。

于 2012-09-26T16:59:17.613 回答