很多时候开辟和释放都是成对的,这样是为了避免产生内存泄漏,还有一种情况下容易导致这种错误,就是程序中某些异常控制中,当出现类似于文件读写打不开的时候,直接RETURN,而忽略了前面动态开辟的 内存,一般情况下,正常下退出时都还是比较能记得释放。。。
一定要注意在异常发生后,RETURN前也要进行释放。。。否则同样会产生内存泄漏!
其次就是在开辟内存之后应该记得初始化新开辟的空间(对连续空间使用MEMSET(...)),不然某种情况下也有可能出现很难查找到的BUG。。。
本文讨论了内存管理中的常见问题,包括如何避免内存泄漏以及在内存分配后进行初始化的重要性。特别强调了在异常处理中正确释放内存的方法。
很多时候开辟和释放都是成对的,这样是为了避免产生内存泄漏,还有一种情况下容易导致这种错误,就是程序中某些异常控制中,当出现类似于文件读写打不开的时候,直接RETURN,而忽略了前面动态开辟的 内存,一般情况下,正常下退出时都还是比较能记得释放。。。
一定要注意在异常发生后,RETURN前也要进行释放。。。否则同样会产生内存泄漏!
其次就是在开辟内存之后应该记得初始化新开辟的空间(对连续空间使用MEMSET(...)),不然某种情况下也有可能出现很难查找到的BUG。。。
5124
1837
2万+

被折叠的 条评论
为什么被折叠?