-Weffc++

读书的时候,读Effective C++,当时还打趣的说,世界上的C++程序员分为两种,看过Effective C++的,和没有看过的。

 

最近才注意到,gcc的 -Weffc++编译选项能警告我们,如果代码没有遵循Effective C++的编码规范。

 

最近我们就发现一个:

 

 

struct uncopyable

{

       uncopyable() {}

private:

        uncopyable(uncopyable const&);

};

 

struct A: uncopyable {}; // -Weffc++ warning: base class ‘struct uncopyable’ has a non-virtual destructor

 

 

麻烦的是我们使用的大多数STL,BOOST 库都没有完全遵守Effective C++的规则。

 

而-Weffc++还没有聪明到能识别哪些警告是不需要的,从而造成我们编译代码时打印出了大量不必要的警告信息。

 

anyway, -Weffc++是个好东西,宁可错报,不要漏报。

你可能感兴趣的:(c,struct,gcc,读书,Class,destructor)