`
kofsky
  • 浏览: 201710 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

BoundsChecker 检查内存泄露

 
阅读更多

程序跑完一副图片后就少了10几M内存,自己瞄来瞄去,仍然不晓得哪里漏掉了删除指针。

于是想找工具BoundsChecker 来检测一下。

设置了 BoundsChecker 

 

在 Debug 中跑起来看,检查的错误全部都是系统DLL的内存分配冲突,分配与删除不在同一个模块内。

 

困惑中。

后来无意中 在BoundsChecker  的选项中选中 Rebuild All with BoundsChecker  ,把整个工程build一下,再debug的时候就发现好几种其他的错误。其中一个就是 Memory leak,点过去一看,果然是这个问题。

    if( _r!=NULL )
        delete _r;
    _r 
= NULL;

    
if( _g=NULL )  // 就这里错啦,应为:_g!=NULL
        delete _g;
    _g 
= NULL;

    
if ( _b!=NULL )
        delete _b;
    _b 
= NULL;

再运行一次,果然没问题了。

分享到:
评论

相关推荐

    使用BoundsChecker检测内存泄漏

    使用BoundsChecker检测内存泄漏 BoundsChecker 是一种用于检测内存泄漏的工具,它采用 Code Injection 技术来截获对内存分配和释放函数的调用。下面是 BoundsChecker 的工作原理和实现细节: BoundsChecker 工作...

    用BoundsChecker检查内存泄漏

    ### 使用BoundsChecker检查内存泄漏与指针越界 在软件开发过程中,尤其是使用C++进行编程时,内存管理是一项至关重要的任务。不当的内存管理可能导致内存泄漏和指针越界等严重问题,这些问题可能在短期内不会立即...

    内存泄露检测工具boundschecker11.rar

    3. **监测和报告**:程序运行期间,BoundsChecker会记录内存分配和释放操作,当检测到可能的内存泄露时,它会提供详细的错误报告,包括内存泄漏的堆栈跟踪信息,帮助定位问题所在。 4. **修复问题**:根据Bounds...

    内存泄露检查工具BoundsChecker

    BoundsChecker通过静态分析和动态运行时检查来检测内存泄露、缓冲区溢出、未初始化的变量等错误。静态分析在编译时进行,可以找出潜在的代码问题,而动态运行时检查则在程序运行时监控内存分配和释放,能够定位到...

    BoundsChecker6.5vc6.0内存泄漏检测

    标题中的“BoundsChecker6.5vc6.0内存泄漏检测”指的是一个专门针对Microsoft Visual C++ 6.0(简称VC6.0)编译器的内存泄漏检测工具——BoundsChecker 6.5。这个工具在软件开发过程中扮演着至关重要的角色,因为它...

    BoundsChecker使用说明

    BoundsChecker 可以检测内存泄漏问题,例如未释放的内存对象。当检测到内存泄漏时,BoundsChecker 将发出警告,帮助开发者快速地解决问题。 5.2 野指针检测示例 BoundsChecker 可以检测野指针问题,例如指向无效...

    BoundsChecker

    2. **运行检查**:说明如何启动BoundsChecker的内存检查,这可能包括在程序运行前后设置断点,以及在运行过程中监视内存使用情况。 3. **错误报告**:解释BoundsChecker如何报告内存越界和其他相关问题,可能包括...

    MFC内存泄漏检测工具BoundsChecker用法.txt

    简单介绍了MFC下内存泄漏检测工具BoundsChecker的用法。

    BoundsChecker 教程

    - 实时检测内存泄漏和野指针。 - 防止数组越界访问,防止程序因非法内存操作而崩溃。 - 识别和报告GDI和其他系统资源的泄漏,确保资源的有效管理。 - 检测并预防死锁情况,提高多线程程序的稳定性。 - 提供清晰的...

    BoundsChecker6.5_VC++内存泄漏查看软件

    2. **动态检测**:当程序执行时,BoundsChecker会检查每个内存块的分配和释放,确保没有未释放的内存。 3. **越界检查**:除了内存泄漏,它还能检测数组和对象的越界访问,这是另一种常见的内存错误。 4. **报告生成...

    BoundsChecker v7.2.zip

    BoundsChecker的主要功能是帮助开发者检测程序中的内存错误、资源泄漏和其他运行时问题,从而提高软件质量和稳定性。 1. **内存错误检测**:BoundsChecker的核心能力在于它可以检测出程序中的内存越界访问,包括...

    BoundsChecker v6.5 (运行时错误检测工具)

    通过对被测应用程序的操作,BoundsChecker提供清晰的、详细的程序错误分析,自动查明静态的堆栈错误及内存/资源泄露,并能够迅速的定位出错的源代码,即使在没有源代码的情况下也可检查第三方组件的错误。Bounds...

    内存泄露检测工具(只能用于VC6.0)

    "BoundsChecker"是一款专为Visual C++ 6.0设计的内存泄露检测工具,它能帮助开发者在运行时检测并定位程序中的错误,包括但不限于内存泄露、数组越界、空指针引用等。 BoundsChecker的工作原理是通过插入额外的代码...

    NuMega BoundsChecker 6.5 (VisualC++)

    BoundsChecker的主要功能是帮助程序员在运行时检测并报告程序中的缓冲区溢出、未初始化的变量、内存泄漏和其他内存相关问题,从而提高软件的稳定性和安全性。 BoundsChecker 6.5 版本是针对Visual C++ 6.0开发...

    Numega.BoundsChecker.v6.5.rar

    BoundsChecker的核心功能在于其对内存泄漏、缓冲区溢出、无效指针引用等常见编程错误的检测。在开发过程中,这些错误往往难以察觉,但在实际运行时可能导致程序崩溃或安全性问题。通过集成到开发环境,如Borland ...

    BoundsChecker 6.01 及 9.1种子

    它能够检测和诊断出在静态、堆栈内存中的错误以及内存和资源泄漏问题。在运行状态下,BoundsChecker 验证超过 8,700 APIs 和 OLE 方法,包括最新的 Windows APIs、ODBC、ActiveX、DirectX、 COM 和 ...

    BoundsChecker使用说明.docx

    - 深度分析:不仅能检测内存泄漏,还能检测到野指针、数组越界等复杂问题。 - 资源管理:对GDI、句柄等系统资源的泄漏进行跟踪。 - 线程安全:支持检测多线程环境中的死锁问题。 - 用户友好的报告:提供详细、易理解...

Global site tag (gtag.js) - Google Analytics