Поделиться через


Обнаружение и изоляция утечек памяти

Обновлен: Ноябрь 2007

Этот раздел применим к:

Выпуск

Visual Basic

C#

C++

Web Developer

Экспресс-выпуск

Тема не применяется Тема не применяется

Только машинные коды

Тема не применяется

Standard

Тема не применяется Тема не применяется

Только машинные коды

Тема не применяется

Pro и Team

Тема не применяется Тема не применяется

Только машинные коды

Тема не применяется

Обозначения:

Тема применяется

Применяется

Тема не применяется

Неприменимо

Тема применяется, но команда по умолчанию сокрыта

Команда или команды скрытые по умолчанию.

Возможность динамически выделять и освобождать память — одна из важнейших функций программирования C/C++, которая в то же время может обернуться не меньшими проблемами. Это безусловно верно для приложений C/C++, где проблемы обработки памяти являются одним из самых распространенных типов ошибок.

Одна из наиболее трудно обнаруживаемых ошибок — утечка памяти. Это сбой при освобождении предварительно занятой памяти. Небольшая утечка памяти, произошедшая однажды, может остаться незамеченной, но программы с утечкой большого количества памяти (или с растущей утечкой) могут показывать симптомы от низкой (и продолжающей снижаться) производительности до нехватки памяти. В худшем случае программы с утечкой памяти могут использовать так много памяти, что сбои начинают возникать в других программах, а пользователь не может понять, в чем действительно состоит проблема. Кроме того, даже безвредная на первый взгляд утечка памяти может быть признаком другой проблемы.

Отладчик Visual Studio и библиотеки времени выполнения C (CRT) предоставляют эффективные средства для обнаружения утечек памяти. Чтобы понять, как с помощью отладочных возможностей CRT обнаружить утечку памяти, прочтите следующие разделы:

MFC предоставляет свой набор функций для обнаружения утечек памяти в программах MFC. Дополнительные сведения содержатся в разделе Обнаружение утечек памяти в MFC.

См. также

Основные понятия

Безопасность отладчика

Другие ресурсы

Отладка машинного кода