MFC를 쓰면서 Memory Leak에 대한 Check부분이 상당히 편하다.
일반적으로
Dumping objects -> xxx.cpp {91} normal block at ... 식의 File명이 나오는데,
간혹 File명이 안나오고 , Memory Block만 ( {91} ) 나오는 경우엔 _CRTXXX 함수들을 통해 해당 Memory를 Alloc하는 곳을
찿아야 한다.. 근데, 좀더 쉬운 방법이 있어 소개를 시켜주면,
Program의 진입점(MFC의 경우에는 WinApp::InitInstance, Console에서는 main)의 첫줄에 아래와 같은 함수를 호출하면 된다.
AfxSetAllocStop(91) --> 91번째 Alloc시의 Application이 Stop되어 해당 위치를 편하게 찾을수있다.
댓글 없음:
댓글 쓰기