메모리를 동적으로 할당(new) 한 후 해제(delete) 되지 않았을때 Visual C++ 에서 알아내는 방법에 대하여 알아보자.

참고링크 [Bottom] [Top]

매크로 정의 [Bottom] [Top]

먼저 디버깅 모드에서 동적 메모리를 추적할 수 있도록 아래와 같이 매크로를 정의한다.

동적 메모리의 추적은 디버그 모드에서만 사용가능하다.

동적 메모리의 추적 방법 설정 [Bottom] [Top]

동적 메모리를 어떻게 추적할지를 제어하기 위하여 설정하는 것으로 메모리를 할당하기 전에 실행해야 한다.

동적 메모리의 추적 방법을 제어하는 비트 필드는 다음과 같다.

동적 메모리의 추적 예제 [Bottom] [Top]

예제의 결과 [Bottom] [Top]

디버그 모드로 실행후 프로그램이 종료되면 아래의 Visual Studio 의 출력창에 다음과 같은 결과가 출력된다.

여기에서 아래의 메세지는 main.cpp 의 21 번째 줄에서 할당한 256 바이트가 해제 안된 것을 알려준다.


CategoryDebug CategoryWin32

Visual C++ 에서 동적 메모리 체크하기 (last edited 2005-07-17 12:10:56 by 61)