重要 |
是否用内联函数取代了宏代码? |
|
|
…… |
|
类的构造函数、析构函数和赋值函数 | ||
重要性 |
审查项 |
结论 |
重要 |
是否违背编程规范而让C++ 编译器自动为类产生四个缺省的函数:(1)缺省的无参数构造函数;(2)缺省的拷贝构造函数;(3)缺省的析构函数;(4)缺省的赋值函数。 |
|
重要 |
构造函数中是否遗漏了某些初始化工作? |
|
重要 |
是否正确地使用构造函数的初始化表? |
|
重要 |
析构函数中是否遗漏了某些清除工作? |
|
|
是否错写、错用了拷贝构造函数和赋值函数? |
|
重要 |
赋值函数一般分四个步骤:(1)检查自赋值;(2)释放原有内存资源;(3)分配新的内存资源,并复制内容;(4)返回 *this。是否遗漏了重要步骤? |
|
重要 |
是否正确地编写了派生类的构造函数、析构函数、赋值函数?注意事项: (1)派生类不可能继承基类的构造函数、析构函数、赋值函数。 (2)派生类的构造函数应在其初始化表里调用基类的构造函数。 (3)基类与派生类的析构函数应该为虚(即加virtual关键字)。 (4)在编写派生类的赋值函数时,注意不要忘记对基类的数据成员重新赋值。 |
|
|
…… |
|
类的高级特性 | ||
重要性 |
审查项 |
结论 |
重要 |
是否违背了继承和组合的规则? (1)若在逻辑上B是A的“一种”,并且A的所有功能和属性对B而言都有意义,则允许B继承A的功能和属性。 (2)若在逻辑上A是B的“一部分”(a part of),则不允许B从A派生,而是要用A和其它东西组合出B。 |
|
|
…… |
|
其它常见问题 | ||
重要性 |
审查项 |
结论 |
重要 |
数据类型问题: (1)变量的数据类型有错误吗? (2)存在不同数据类型的赋值吗? (3)存在不同数据类型的比较吗? |
|
正文
C++/C代码审查表(四)2007-04-11 22:08:00
【评论】 【打印】 【字体:大 中 小】 本文链接:http://blog.pfan.cn/lym51/24812.html
阅读(2321) | 评论(0)
版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!
评论