// Debug_New.h
#if !defined(_Debug_New_Defined_)
#define _Debug_New_Defined_

#if defined(_DEBUG)
//#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>

static class CRT_MEMORY_CHECK
{
public:
  CRT_MEMORY_CHECK()
  {
    _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF _CRTDBG_LEAK_CHECK_DF );
  } // CRT_MEMORY_CHECK()
} _crt_memory_check;

void *operator new(size_t size, const char *filename, int line)
{
  printf( "operator new() called\n" );
  printf( "%s(%d)\n", filename, line );
  return ::operator new(size, _NORMAL_BLOCK, filename, line);
} // operator new()

#define THIS_FILE    __FILE__
#define DEBUG_NEW    new(THIS_FILE, __LINE__)

#endif // defined(_DEBUG)

#endif // !defined(_Debug_New_Defined_) 
 
2006/05/13 23:56 2006/05/13 23:56

글 걸기 주소 : 이 글에는 트랙백을 보낼 수 없습니다

덧글을 달아 주세요