文章目录
1.内存跟踪器的实现
- 1个解决方案中可以包含多个工程
所以要编译和启动CalculatorTest项目,则需要将其设置为启动项目
接着运行,此时就是CalculatorTest项目
编写测试程序测试内存泄漏时发生的情况
有几种方法可以跟踪内存使用状况呢?
(1)自己实现malloc(new内部也是使用malloc实现的),在里面进行跟踪
(2)推荐使用内存检测工具进行跟踪:
Linux:valgrind,dmalloc,efence
Windows:visual leak detector
(3)自己编写小型的内存跟踪器:重载operator new和operator delete来进行跟踪
new operator等价于operator new先分配内存 + 如果是一个类对象还会调用构造函数,所以可以在operator new中跟踪在哪一个文件哪一行分配了内存
17:08