下面是我同事关于今天内存泄漏的问题总结,我也顶一下。
http://blog.csdn.net/owe/archive/2009/07/04/4321440.aspx
(1)在使用osg的智能指针等第三方库的时候,经常会出现系统谎报,output出现大量的内存泄漏。
可以通过调整dll库调用顺序来解决问题 同时在工程依赖库前端mfc80d.lib mfcm80d.lib,
这样这两个库就会最后卸载,其他库先卸载。
(2)定位内存泄漏位置:
Detected memory leaks! Dumping objects -> C:/PROGRAM FILES/VISUAL STUDIO/MyProjects/leaktest/leaktest.cpp(20) : {18} normal block at 0x00780E80, 64 bytes long. Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD Object dump complete.
VS的watch窗口中输入{,,msvcr80d.dll}_crtBreakAlloc,修改值为上面的18。
就可以调试了。