1.在宏定义中如果有return语句的话,当第二个宏语句出现的错误直接return的时候,那么这个时候第一个宏申请的内存就会出现内存泄漏的情况。小心使用有return语句的宏定义,确保前面的资源已经进行了释放。
2.异常捕获的地方没有释放内存。
3.没有释放数据组的成员指针,在使用指针数组的时候,需要特别注意在释放数组的时候,数组中的每个元素指针是否已经提前被释放,这样 才不会导致内存泄漏。
4.非空指针作为左值需要释放的指针参与运算。
5.重复分配内存
再拷贝别人的代码的时候,有的时候代码中会有分配资源的情况。
6.使用复杂的语句和资源的时候没有及时进行释放 资源,在编程的时候,我们需要养成及时释放内存和资源的情况。
7.一定要记得释放队列中的内存。
8.当你强制关闭线程的时候,没有释放线程占用的资源,使用事件或者信号量通知线程,确保线程调用自身的函数。