vs2010内存泄露检测工具哪个好

全部回答2
默认 最新
  • vld调试动态库dll时候出现如下内存泄露问题。只要加载进去,就会出现如下信息。
    0 点赞
  • (这里,和这里),VS本身即具有内存泄露检测机制,只需做如下设置,在debug模式下以F5运行:方法一:// 在入口函数cpp中添加以下定义和头文件#define CRTDBG_MAP_ALLOC #include <stdlib.h> #include <crtdbg.h> 在入口函数中包含_CrtDumpMemoryLeaks(); 即可检测到内存泄露以如下测试函数为例:int main() { char* pChars = new char[10]; _CrtDumpMemoryLeaks(); return 0; } F5运行输出窗口会得到:Detected memory leaks! Dumping objects -> {126} normal block at 0x002A4630, 10 bytes long. Data: < > CD CD CD CD CD CD CD CD CD CD Object dump complete. 注意:1.在VS2010下测试的时候,发现_CrtDumpMemoryLeaks();这句必须放在函数结束处,放在主函数入口处输出窗口不会输出内存泄露信息2.{}中的数字指明这块内存是程序中总计第几个被申请的,这种方法没有行号和其他信息输出。我们可以定义:#ifdef _DEBUG #define new new(_NORMAL_BLOCK, __FILE__, __LINE__) #endif 输出:Detected memory leaks! Dumping objects -
    0 点赞

没有更多内容了

返回顶部
产品求购 求购