明广的'Effective C++'警告

The 'Effective C++' warnings in MinGW

本文关键字:C++ 警告 Effective      更新时间:2023-10-16

MinGW有这个选项,您可以启用它来显示Scott Meyers的Effective c++ 建议的警告。我没有那本书,也不容易弄到,我现在也没有时间去读它,所以我的问题是,这些"迈耶斯警告"到底是什么?

http://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html

-Weffc++(仅限c++和objective - c++)

警告违反以下Scott Meyers的Effective c++书中的风格指南:

  • 条款11:为动态分配内存的类定义复制构造函数和赋值操作符。
  • item12 :在构造函数中首选初始化而不是赋值。
  • 条款14:使析构函数在基类中为虚函数。
  • 第15项:让operator=返回对*this的引用。
  • 第23条:当必须返回一个对象时,不要试图返回一个引用。

还警告违反Scott Meyers的《更有效的c++》一书中的以下风格指南:

  • 条款6:区分自增和自减操作符的前缀和后缀形式。
  • 项7: &&||,不能过载。

选择此选项时,请注意标准库头文件不遵守所有这些准则;使用grep -v过滤掉这些警告。