출처: 데브피아

MSDN 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_mfc_DEBUG_NEW.asp

이 글을 참고하시고...

모든 CPP 파일 첫머리에
(#include 부분 다음, 소스 시작 전)

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

이렇게 선언하면 됩니다.
클래스위자드로 MFC 클래스를 추가하면 자동으로 들어가는데
그렇지 않으면 안 들어가죠.

이렇게 매크로가 선언되어있으면
디버그 빌드에서 메모리 릭이 발생했을 때
해당 메모리의 정확한 할당 지점(소스 상의 위치)를 알 수 있습니다.

그 다음부터 금방 해결되겠죠.

단, 한 가지 주의해야 할 게 있습니다!

프로그램 종료 과정 중에 엑셉션이 발생하면
때때로 아무런 표시없니 abnormal termination을 하게 됩니다.
그러면 메모리가 하나도 해제되지 않겠죠?
당연히 엄청난 메모리 릭이 발생합니다.

이런 경우는.. 사실 문제를 발견하기가 쉽지 않은데
Win32 Structured Exception을 캐치함으로써 해결할 수 있을 겁니다.
자세한 내용은 Debugging Windows Programs란 책을 보시길...
Posted by 모과이IT
,