内存泄露打印new和delete重载
2012-06-01 18:05
141 查看
#define TRACE_MEM #ifdef TRACE_MEM #define MEM_NEW new(__FILE__, __LINE__) #define MEM_DELETE delete #else #define MEM_NEW new #define MEM_DELETE delete #endif #ifdef TRACE_MEM inline void * __cdecl operator new(unsigned int size, const char *file, int line) { void* tmp = (void*)malloc(size); return tmp; } inline void * __cdecl operator new[](unsigned int size, const char *file, int line) { void* tmp = (void*)malloc(size); return tmp; } inline void __cdecl operator delete(void *p) { free(p); } inline void __cdecl operator delete[](void *p) { free(p); } #endif class A { public: int i; public: A(int a) { i = a; } A() { } ~A() { } }; int main() { int* a = MEM_NEW int; int* b = MEM_NEW int[10]; A* c = MEM_NEW A; A* d = MEM_NEW A(1); A* e = MEM_NEW A[10]; MEM_DELETE a; MEM_DELETE[] b; MEM_DELETE c; MEM_DELETE d; MEM_DELETE e; return 0; }
相关文章推荐
- vc不包含MFC就不打印内存泄露?
- VC++ 内存泄露 示例代码 让new的位置显示文件名行号
- c++重载new操作符,防止内存泄露
- 理解new和delete还有就是如何防止内存泄露
- p重新调用多次new及delete的内存泄露问题
- 转 内存泄露检测,重载new
- C++重载new,以及实现检测内存泄露版本的new
- 一定要配对的使用new和delete,否则将发生内存泄露(memory leak)
- C/C++ 内存泄露检测 Visual Leak Detector 检测定位内存泄露 对malloc和new均适用
- 内存泄露:重载new delete
- c++内存泄露之重载new运算符
- MVP入门,接口回调new接口和implement实现,防止内存泄露解绑
- Android中使用Handler造成内存泄露的分析和解决
- new与delete申请内存
- Silverlight内存泄露(五)MEF等Ioc框架引起内存泄露-PartCreationPolicy
- android 内存泄露那些事情之View重用(三)
- Andriod注册广播而未销毁引起的内存泄露
- <转载>浅谈MFC内存泄露检测及内存越界访问保护机制
- linux下查看内存泄露
- 使用Xcode和Instruments调试解决iOS内存泄露