我正在实现一个带有链表的稀疏矩阵,手动检查泄漏是不是很有趣,有什么想法吗?
答案 0 :(得分:18)
Unix的valgrind
分析器提供了一个不错的泄漏检测。
然而,这只是成功方法的一部分。另一部分是防止(即最小化)显式内存处理。智能指针和分配器可以帮助防止内存泄漏。此外, do 使用STL类:std::list
已经提供了无泄漏链表实现。
答案 1 :(得分:4)
在Windows上:
Compuware BoundChecker(有点贵,但非常好)
Visual LeakDetector(免费,谷歌)
在Linux / Unix上:
净化
答案 2 :(得分:1)
Unix上Purify的原始版本很棒。但是在Rational购买它之后生成的Windows版本非常糟糕。 Flakey如同地狱。不惜一切代价避免。
答案 3 :(得分:0)
如果使用Anjuta,则可以使用valgrind模块。
答案 4 :(得分:0)
你可以在维基百科上阅读关于内存泄漏的好文章:http://en.wikipedia.org/wiki/Memory_leak
这个页面也有很好的链接到其他文章甚至程序,可以帮助你很多。