![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
内存/泄露
文章平均质量分 80
primer_programer
永无止境
展开
-
浅谈C/C++内存泄漏及其检测工具
对于一个c/c++程序员来说,内存泄漏是一个常见的也是令人头疼的问题。已经有许多技术被研究出来以 应对这个问题,比如Smart Pointer,Garbage Collection等。Smart Pointer技术比较成熟,STL中已经包含支持Smart Pointer的class,但是它的使用似乎并不广泛,而且它也不能解决所有的问题;Garbage Collection技术在Java中已经比较成转载 2008-03-06 09:37:00 · 1166 阅读 · 0 评论 -
使用调试器和CRT库来查找内存泄漏
设置内存泄漏检测检测内存泄漏的基本工具是调试器和CRT调试堆函数。为了使用调试堆函数,在你的程序中你必须含有下面的说明:#define _CRTDBG_MAP_ALLOC#include #include #include说明必须按顺序说明。如果你改变了顺序,你所用的函数可能不能正常工作。包含crtdbg.h的_malloc_dbg和 _free_dbg将 malloc和free函数映转载 2008-03-06 16:16:00 · 1899 阅读 · 0 评论 -
VC++ 6.0 中如何使用 CRT 调试功能来检测内存泄漏
首先,检测内存泄漏的基本工具是调试器和 CRT 调试堆函数。为了使用调试堆函数,必须在要检测内存泄漏和调试的程序中添加下面的语句: #define _CRTDBG_MAP_ALLOC #include #include #include "debug_new.h" MSDN 如是说:“必须保证上面声明的顺序,如果改变了顺序,可能不能正常工作。”至于这是为什么,我们不得而知。MS 的老大转载 2008-03-06 16:19:00 · 854 阅读 · 0 评论 -
BoundsChecker检测内存泄露
BoundsChecker 是一个Run-Time错误检测工具,它主要定位程序在运行时期发生的各种错误。BoundsChecker能检测的错误包括:1))1、指针操作和内存、资源泄露错误,比如:内存泄露;资源泄露;对指针变量的错误操作。22、内存操作方面的错误,比如: 内存读、写溢出; 使用未初始化的内存。33、API函数使用错误BoundsChecker安转载 2008-03-07 10:45:00 · 1256 阅读 · 2 评论 -
如何在VC++ 6.0中启用内存泄漏检测?
VC++ IDE 的默认状态是没有启用内存泄漏检测机制的,也就是说即使某段代码有内存泄漏,调试会话的 Output 窗口的 Debug 页不会输出有关内存泄漏信息。你必须设定两个最基本的机关来启用内存泄漏检测机制。 一是使用调试堆函数: #define _CRTDBG_MAP_ALLOC #include #include 注意:#include 语句的顺序。如果更改此顺序,所使用的转载 2008-03-06 15:46:00 · 1054 阅读 · 0 评论