아주 오래된, 큰 C++ 프로젝트를 디버깅하려고합니다.감지 된 메모리 누수
Detected memory leaks!
Dumping objects ->
{629} normal block at 0x0000000000084CA0, 16 bytes long.
Data: < ? > D0 A7 F0 3F 01 00 00 00 00 00 00 00 00 00 00 00
{628} normal block at 0x0000000000084C20, 16 bytes long.
Data: < ? > 10 A9 F0 3F 01 00 00 00 00 00 00 00 00 00 00 00
{5667963} normal block at 0x000000000709FB20, 88 bytes long.
....
....
Data: <p 3 > 70 D0 0F 07 00 00 00 00 33 00 00 00 00 01 00 00
Object dump complete.
The program '[4892] Classifier.exe' has exited with code 0 (0x0).
가 나는 그것의 아주 큰부터 프로그램을 붙여 드릴 수 없습니다 만 디버그 모드에서이
void main(int argc, char *argv[])
{
try
{
_CrtDumpMemoryLeaks(); //memory leak detection
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF);
_CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_DEBUG);
....
....
}
catch()
{ ....
}
}
이 프로그램이 성공적으로 실행처럼 간다 : 다음과 같은 오류를주고있다. 그러나, 출력에서 위의 오류 메시지를 참조하십시오. 아니요 출력에서 어디에서 메모리 누수가 탐지되었는지에 대한 정보를 얻을 수있는 라인 번호를 찾을 수 있습니다.
줄 번호를 보려면 추가해야 할 것이 있습니까?
는 보통 메모리의 629 할당을 의미합니다, 당신은
을 제공합니다 메시지. –
메모리 누수가 감지되면 메모리가 생성 된 위치를 알아 내야합니다. –