windows下:
1.使用商业工具purifyplus或者boundschecker
2.使用,visual Leak detector, http://www.codeproject.com/KB/applications/visualleakdetector.aspx,不过好像需要每个.c/cpp都要包含其制定的头文件vld.h(本人不是很确定,只在main所在的文件包含vld.h,结果没有发现泄漏)。
3.Leakfinder, http://www.codeproject.com/KB/applications/leakfinder.aspx,只在main所在的源文件包含响应的头文件,并且调用相应的初始化函数即可。确定是是输出结果有点乱,不过确实找到了泄露的内存。限制:只能处理new/delete产生的泄露。
4.微软的c运行库调试函数,不过似乎只支持malloc/free函数,对于new/delete需要用户定义,添加相应的宏定义,本人在网上找了半天,一直没有搞定。
Linux下:
valgrind,其他的没有什么印象了。