十大方法避免程序中的Bug
1. 启用所有警告和错误消息
编写高质量的代码始于编译阶段。启用所有警告和错误消息可以帮助我们在编译期间捕捉到尽可能多的问题。禁用警告和错误信息就像因为仪表盘上的检查引擎灯让你心烦就拔掉它一样:忽视问题并不会让它消失。如果你的编译器有“地狱级语法检查”模式,就启用它。Visual Studio.NET 和 Dev-C++ 都有一个“启用所有消息”选项——设置它。最终你会节省时间。
示例代码片段
#include "student.h"
#include "MyClass.h"
Student* addNewStudent(MyClass myObject, char* pName, SSNumber ss) {
Student* pS;
if (pName != 0) {
pS = new Student(pName, ss);
myObject.addStudent(pS);
}
return pS;
}
在这个例子中,如果 pName
为 0, pS
将永远不会被初始化为任何东西。一个好的 C++ 编译器可以检测到这个路径,并生成一个警告,例如:“ pS
在返回给调用者时可能未被初始化”。
2. 坚持干净编译
在开始调试代码之前,确保你已经移除或者至少理解了编译过程中产生的所有警告信息。如果你启用了所有警告信息然后又忽略它们,这对你没有任何好处。如果你不理