... };
2.6.4 关于析构函数
规范级别:规则 规则描述:
为每一个类显示的定义析构函数。
理由:
确保类的编写者考虑类对象在析构时,可能出现的各种情况。
举例:
class CMyClass {
...
~CMyClass (CMyClass& object); ... };
2.6.5 虚拟析构函数
该规则参考自《Effective C++》中的条款 14。
规范级别:规则 规则描述:
基类的析构函数一定要为虚拟函数(virtual Destructor)。 理由:
保证类对象内存被释放之前,基类和派生类的析构函数都被调用。
2.6.6 不要重新定义继承来的非虚函数
规范级别:规则 规则描述:
在派生类中不要对基类中的非虚函数重新进行定义。如果确实需要在派生类中对该函数进行不同的定义,那么应该在基类中将该函数声明为虚函数; 理由:
不要忘了,当通过一个指向对象的指针调用成员函数时,最终调用哪个函数取决于指针本身的类型,而不是指针当前所指向的对象。
2.6.7 用内联函数代替宏函数
规范级别:建议 规则描述:
用内联函数代替宏函数。
理由:
同宏函数相比,内联函数不但具有宏函数的效率,而且使用起来更安全。
2.6.8 如果重载了操作符"new",也应该重载操作符 "delete"
该规则参考自《Effective C++》中的条款10。 规范级别:规则