Почему _CrtDumpMemoryLeaks сообщает об утечке памяти здесь?
Я хочу проверить утечку памяти в режиме отладки. Я использую Windows и, чтобы сделать эту работу, функцию_CrtDumpMemoryLeaks.
Теперь, почему этот код находит утечку памяти?
#include <Windows.h>
#include <iostream>
int main()
{
if(_CrtDumpMemoryLeaks() == TRUE)
std::cerr << "MEMORY LEAK!" << std::endl;
return 0;
}
EDIT:
Я добавляю этот код для прямого вывода на консоль:
_CrtSetReportMode( _CRT_WARN, _CRTDBG_MODE_FILE );
_CrtSetReportFile( _CRT_WARN, _CRTDBG_FILE_STDOUT );
_CrtSetReportMode( _CRT_ERROR, _CRTDBG_MODE_FILE );
_CrtSetReportFile( _CRT_ERROR, _CRTDBG_FILE_STDOUT );
_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE );
_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDOUT );
Выход: