明广的'Effective C++'警告
The 'Effective C++' warnings in MinGW
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
过滤掉这些警告。
相关文章:
- 警告处理为错误这里有什么问题
- 使用动态分配的数组会导致代码分析发出虚假的C6386缓冲区溢出警告
- cppcheck在const std::string[]上引发警告
- GCC对可能有效的代码抛出init list生存期警告
- 如何在BST的这个简单递归实现中消除警告
- 关于std::move的使用,是否有编译警告
- g++ 在某个类成员未初始化时不发出警告
- 如何处理来自核心指南检查器的关于gsl::at的静态分析警告
- 使用typeid警告未使用的变量
- 示例C++项目编译中的警告
- 警告:在函数返回类型 [-Wignore 限定符] 时忽略类型限定符
- 如何修复编译器警告 C6386 和 C6385?
- 返回语句后的代码,没有警告
- 获取隐式转换溢出从无符号到已签名的警告
- 编译器警告:执行到达值返回函数的末尾而不返回值
- 在未链接的部分上生成警告
- 警告 C4552:">>":未使用表达式的结果
- 禁止显示由于常量为零而比较始终为假的警告
- C++ 警告:将新创建的 gsl::owner<> 分配给非所有者
- 为什么布尔开关语句有编译器警告?