1. 在类的构造函数和析构函数中没有匹配的调用new和delete函数
2. 没有正确地清除嵌套的对象指针
3. 在释放对象数组时在delete中没有使用方括号
4. 指向对象的指针数组不等同于对象数组
5. 缺少拷贝构造函数
6. 缺少重载赋值运算符
7. 关于nonmodifying运算符重载的常见迷思
8. 没有将基类的析构函数定义为虚函数
野指针:指向被释放的或者访问受限内存的指针。
造成野指针的原因:
指针变量没有被初始化(如果值不定,可以初始化为NULL)
指针被free或者delete后,没有置为NULL, free和delete只是把指针所指向的内存给释放掉,并没有把指针本身干掉,此时指针指向的是“垃圾”内存。释放后的指针应该被置为NULL.
指针操作超越了变量的作用范围,比如返回指向栈内存的指针就是野指针。