和《C陷阱与缺陷》一样,如果编程时记得尽量伪装成人类,就不会遭遇书中描述的大部分错误。所以这本书可以视为《如何伪装成地球人之C++程序员篇》。除了不良风格导致的错误,还有一些条款比较有启发的:
1)不要为了跨平台把#if扔得到处都是,用源码文件(如winimpl.cpp和linuximpl.cpp)来区别是替代方案。
2) 珍惜生命,远离cast。
3)抛异常时使用继承std::exception的类对象,避免使用原始类型尤其是字符串。
4)使用异常时不要抛出指针,抛出对象! 之后用引用的方式捕获它们。
5)在类里面放一个类型特征码常预示不良设计。
6)虚函数不应该有重载函数。重载加多态,程序死得快。
7)虚函数不应该有默认参数。
8)成员常量和引用数据成员很少有用。别用它们。