2

MinGW 有这个选项,你可以启用它来显示 Scott Meyers 的Effective C++建议的警告。我没有这本书,也不能轻易得到它的副本,我现在也没有时间阅读它,所以我的问题是,这些“迈耶斯警告”到底是什么?

4

1 回答 1

4

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

-Weffc++(仅限 C++ 和 Objective-C++)

警告违反 Scott Meyers 的 Effective C++ 书中的以下样式指南:

  • 第 11 项:为具有动态分配内存的类定义复制构造函数和赋值运算符。
  • 第 12 项:在构造函数中更喜欢初始化而不是赋值。
  • 第 14 项:在基类中使析构函数为虚拟。
  • 第15项:有operator=返回参考*this
  • 第 23 条:当你必须返回一个对象时,不要试图返回一个引用。

还要警告违反 Scott Meyers 的《更有效的 C++》一书中的以下样式指南:

  • 第 6 项:区分递增和递减运算符的前缀和后缀形式。
  • 第 7 项:永远不要超载&&,,||,

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

于 2011-11-17T20:56:29.547 回答