程序员技巧 —— 内存泄漏检测工具

简介: 程序员技巧 —— 内存泄漏检测工具

程序员技能提升

VisualC++ debugger 和 CRT 库

第一步:包含以下头文件

#define _CRTDBG_MAP_ALLOC
#include<stdlib.h>
#include<crtdbg.h>

第二步:接管new操作符

#ifdef _DEBUG
#ifndef DBG_NEW
#define DBG_NEW new(_NORMAL_BLOCK, __FILE__, __LINE__)
#define new DBG_NEW
#endif
#endif

第三步:在代码结束出输出内存泄漏信息

_CrtDumpMemoryLeaks();


全部代码

注:在正式版代码发布之前可以利用这个工具检测程序是否有内存泄漏,当正式版代码发布时,最好还是将上述代码去掉以免影响性能。

#define _CRTDBG_MAP_ALLOC
#include<stdlib.h>
#include<crtdbg.h>
#include<iostream>
#include<stdio.h>
#ifdef _DEBUG
#ifndef DBG_NEW
#define DBG_NEW new(_NORMAL_BLOCK, __FILE__, __LINE__)
#define new DBG_NEW
#endif
#endif
using namespace std;
//不释放内存
void demo_1()
{
    int* p = new int[100];
    p[0] = 1;
}
//释放内存
void demo_2()
{
    int* p = new int[100];
    p[0] = 1;
    delete[]p;
}
int main()
{
    demo_2();
    for (int i = 0; i < 3; i++)
        demo_1();
    _CrtDumpMemoryLeaks();  //检测内存是否泄漏
    return 0;
}


6ba208efe584433cbbbc11b02c59e81c.png

目录
相关文章
|
8月前
|
IDE Linux 开发工具
内存泄漏检测工具Valgrind:C++代码问题检测的利器(一)
内存泄漏检测工具Valgrind:C++代码问题检测的利器
1722 0
|
4月前
|
算法 程序员 Python
程序员必看!Python复杂度分析全攻略,让你的算法设计既快又省内存!
在编程领域,Python以简洁的语法和强大的库支持成为众多程序员的首选语言。然而,性能优化仍是挑战。本文将带你深入了解Python算法的复杂度分析,从时间与空间复杂度入手,分享四大最佳实践:选择合适算法、优化实现、利用Python特性减少空间消耗及定期评估调整,助你写出高效且节省内存的代码,轻松应对各种编程挑战。
72 1
|
6月前
|
存储 弹性计算 程序员
新手程序员如何阿里云服务器配置?新人开发者CPU内存带宽存储怎么选?
对于新手开发者、个人或学生选择阿里云服务器,推荐ECS经济型e实例(ecs.e-c1m1.large),适用于小型网站或轻量应用。配置2核2G内存、3M固定带宽、40G ESSD系统盘,仅99元/年且续费同价。
|
8月前
|
C++ Windows
windows下内存检测工具
windows下内存检测工具
272 0
|
7月前
|
缓存 Linux
centos内存检测工具
【6月更文挑战第1天】centos内存检测工具
193 3
|
7月前
|
监控 Linux 测试技术
edac是检测什么的,和centos内存条损害检测工具
【6月更文挑战第1天】edac是检测什么的,和centos内存条损害检测工具
238 2
|
7月前
|
存储 机器学习/深度学习 Linux
程序员必知:关于Linux内存寻址与页表处理的一些细节
程序员必知:关于Linux内存寻址与页表处理的一些细节
56 0
|
7月前
|
机器学习/深度学习 分布式计算 JavaScript
心得经验总结:折腾几天,内存检测工具写出来了
心得经验总结:次奥,折腾几天,内存检测工具写出来了
35 0
|
8月前
|
算法 编译器 C语言
【C/C++ 实用工具】内存泄漏与堆溢出检测工具一览
【C/C++ 实用工具】内存泄漏与堆溢出检测工具一览
419 0

热门文章

最新文章