我正在寻找一份关于C++的g++编译器推荐警告选项列表,但只能找到这些内容:Recommended gcc warning options for C 和 Useful GCC flags for C,它们都非常特定于C语言。
-Wall和-Wextra选项可以启用大部分gcc所能生成的警告信息,但并不包括所有的警告。
在编译C++时应该开启哪些特别的警告选项?
我正在寻找一份关于C++的g++编译器推荐警告选项列表,但只能找到这些内容:Recommended gcc warning options for C 和 Useful GCC flags for C,它们都非常特定于C语言。
-Wall和-Wextra选项可以启用大部分gcc所能生成的警告信息,但并不包括所有的警告。
在编译C++时应该开启哪些特别的警告选项?
-Wall -Wextra
常常涵盖了真正值得关注的警告信息。我个人也喜欢使用 -ansi -pedantic
进行编译,有时也会加上 -Wshadow
。
此外,-Weffc++
有时也会提出更好的代码质量建议,但它可能会有点嘈杂并且不是100%有用。
编辑 在现代C++时代,你应该使用 -std=c++14 -pedantic
或者你选择的版本来替换 -ansi -pedantic
,因为 -ansi
会将编译器置于 C++98/C++-03 模式下。
不要忘记 -Wstrict-aliasing
。
我发现这篇文章很好,查看以下参数: 推荐的C语言gcc警告选项