- •Введение в отладчик.
- •Подключение отладчика
- •Запуск отладчика
- •Разница между Step Over и Step Into
- •Run to Cursor
- •Значки инструментальной панели отладчика
- •Restart
- •Stop Debugging
- •Break Execution
- •Аpply Code Changes, Edit and Continue
- •Show Next Statement
- •Complete Word
- •Go To Definition/Reference
- •Insert/Remove Breakpoint
- •Окна отладчика
- •Окно Trace
- •Трассировка кода объекта
- •Трассировка процедурно-ориентированного кода
- •Окно Watch
- •Меню View I Debug Windows
- •Just-in-Time debugging
- •Страница Debug в окне Options
- •Раскладка клавиатуры
- •Короткие клавиши отладчика
Введение в отладчик.
Здесь описываются наиболее употребительные меню, окна, панели диалогов и поля, имеющиеся в отладчике Visual C++. В ней также описываются возможные настройки конфигурации отладочных инструментов, доступные для программиста.
Вы должны установить конфигурацию отладчика до того, "как начнете сеанс отладки. Часто упущение в этом критическом пункте является причиной ненужного раздражения, когда оказывается, что отладчик не настроен в соответствии с потребностями специфического приложения.
Хотя большинство программистов предпочитают взаимодействовать с приложениями посредством кнопок мыши, знание всего нескольких комбинаций «горячих клавиш» сэкономит вам время, затрачиваемое на активацию неактивных окон и необходимого помещения курсора в определенное окно, чтобы стала доступной та или иная опция.
Сначала мы покажем вам, как установить конфигурацию отладчика с помощью мыши и выпадающих меню, а затем опишем соответствующие комбинации клавиш. Чтобы вы быстро могли найти нужную справку, в конце приведена краткая сводная таблица имеющихся комбинаций.
Подключение отладчика
Перед тем, как запускать отладчик Visual C++, нужно построить отладочную версию вашей программы. Для такой версии компилятор вставляет в объектные файлы дополнительную символическую информацию. Отладочное построение в C++ устанавливается по умолчанию, но если вы перед этим выполняли построение тиражируемой версии, то следует снова выбрать отладочную цель.
Перед выбором типа целевого файла необходимо убедиться, что выбран нужный активный проект (требуется только в случае, когда открыто более одного проекта). Для этого в меню Project выберите пункт Set Active Project (Рис.1). Если проектов в списке несколько, выберите тот, который хотите построить. В данном примере проект всего один (aLib).
Р
ис.1.
Установка активного проекта
Рис.2 показывает инструментальную панель Build с двумя целевыми типами в выпадающем списке. Выберите пункт Win32 Debug. В панели (слева направо) расположены: выпадающий список выбора активного проекта (выбран aLib), выпадающий список целевого типа (Win32 Debug), а также кнопки Compile, Build, Stop Build, Execute, Go и Insert/Remove Breakpoint. Эти кнопки будут описываться далее.
Р
ис.2
Выбор целевой версии Win32 Debug.
Если вы не видите на экране инструментальной линейки Build, просто поместите курсор мыши куда-нибудь на главное меню Visual C++ (вверху) и щелкните правой кнопкой. В появившемся списке пометьте флажок Build.
Visual C++ позволяет разместить в рабочем пространстве несколько проектов. Убедитесь, что у вас выбран нужный активный проект, чтобы генерировалась вся необходимая отладочная информация.
Запуск отладчика
Опции отладчика недоступны, пока в Visual C++ не открыто рабочее пространство, проект или приложение. В отладчике Visual C++ нельзя работать только с вспомогательными файлами, - например, отлаживать проект с одними включаемыми файлами. Нужен исходный файл запускаемого модуля, который должен быть В предположении, что программа уже успешно компилирована, для запуска ее в отладчике нужно выбрать один из пунктов меню Build, показанного на Рис.3. (При компиляции программы с предупреждающими сообщениями ее можно запускать. Нельзя запускать только программы с сообщениями об ошибках.) Щелкнув на пункте Build|Start Debug, вы откроете список с четырьмя командами.
Р
ис.3.
Запуск отладчика из меню Build.
Таблица 1. Пункты меню Start Debug
|
Команда Start Debug |
Действие |
Клавиши
|
|
go |
Запускает отладчик и/или исполняет программу (с полной скоростью), пока не встретится контрольная точка или конец программы, либо она будет остановлена для пользовательского ввода. Аналогична кнопке Go инструментальной панели. |
F5
|
|
Step Into |
Запускает отладчик и/или исполняет программу в пошаговом режиме. Когда текущим оператором является вызов функции или метода, отладчик входит внутрь соответствующей процедуры. |
F11
|
|
Run to Cursor |
Запускает отладчик и/или исполняет программу до строки, в которой установлен текстовый курсор. Команду можно применять в качестве альтернативы установке обычной контрольной точки. |
CTRL+F10
|
|
Attach to Process... |
Прикрепляет отладчик к уже работающему процессу. После этого можно приостановить процесс и отлаживать его как обычно. (Эта команда для опытных программистов.) |
|
Выбор одного из четырех пунктов этого списка приведет к замене меню Build на меню Debug (в главной линейке Visual C++). Это покажет, что отладчик запущен (даже если он и остановлен в контрольной точке). Из меню Debug можно управлять выполнением программы и обращаться к окну QuickWatch. Если отладчик не работает, меню Debug снова меняется Build. В таблице 1 описаны четыре пункта опции Build | Start Debug и приведены соответствующие горячие клавиши.
Еще одна горячая клавиша - F10 - в этом начальном меню отсутствует; она соответствует команде Step Over. Нажав F10, вы запускаете отладчик и/или исполняете программу в пошаговом режиме (без входа внутрь вызовов процедур).
