다음을 통해 공유


메모리 할당 추적

이 항목은 다음 언어에 적용됩니다.

Edition

Visual Basic

C#

F#

C++

Web Developer

Express

항목이 적용되지 않음 항목이 적용되지 않음 항목이 적용되지 않음

네이티브 전용

항목이 적용되지 않음

Pro, Premium 및 Ultimate

항목이 적용되지 않음 항목이 적용되지 않음 항목이 적용되지 않음

네이티브 전용

항목이 적용되지 않음

MFC에서 new 연산자 자리에 DEBUG_NEW 매크로를 사용하면 메모리 누수를 찾는 데 도움이 됩니다. 프로그램의 디버그 버전에서 DEBUG_NEW는 할당된 각 개체의 파일 이름과 줄 번호를 추적합니다. 프로그램의 릴리스 버전을 컴파일할 경우 DEBUG_NEW는 파일 이름과 줄 번호 정보 없이 간단한 new 연산자를 확인합니다. 따라서 프로그램의 릴리스 버전에서는 속도가 저하되지 않습니다.

new 자리에 DEBUG_NEW를 사용하기 위해 프로그램 전체를 다시 작성하는 대신, 다음과 같이 소스 파일에서 이 매크로를 정의할 수 있습니다.

#define new DEBUG_NEW

개체 덤프를 수행하면 DEBUG_NEW에서 할당된 개체가 할당된 파일과 줄 번호를 표시하여, 메모리 누수가 발생한 소스를 알 수 있습니다.

MFC 프레임워크의 디버그 버전은 자동으로 DEBUG_NEW를 사용하지만 코드는 그렇지 않습니다. DEBUG_NEW를 효과적으로 사용하려면, 위와 같이 DEBUG_NEW를 명시하거나 #define new를 사용해야 합니다.

참고 항목

기타 리소스

MFC에서 메모리 누수 탐지