Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
трпп_2012.docx
Скачиваний:
63
Добавлен:
30.08.2019
Размер:
727.99 Кб
Скачать

17 Отладочные возможности среды программирования Delphi

Точки останова

Точки останова (breakpoints) позволяют при выполнении определенных условий приостановить работу программы. Чаще всего точки останова размещаются в определенной строке кода, при этом остановка происходит в тот момент, когда данная строка должна начать выполняться.

Для того чтобы поставить в программу точку останова (breakpoint), нужно из меню Run выбрать команду Add Breakpoint (Добавить точку останова), затем из меню следующего уровня - команду Source Breakpoint.

В результате открывается диалоговое окно Add Source Breakpoint, в котором выводится информация о добавляемой точке останова. Поле Filename содержит имя файла программы, куда добавляется точка останова, поле Line number - номер строки программы, в которую добавляется точка останова.

После щелчка на кнопке ОК, точка останова добавляется в программу, и строка, в которой находится точка останова, помечается красной точкой и выделяется цветом.

Точку останова можно добавить, щелкнув мышью на синей точке, помечающей ту инструкцию программы, перед которой надо поместить точку останова (если в программе нет ошибок, то компилятор помечает выполняемые инструкции программы синими точками).

Если необходимо проанализировать поведение программы внутри определенной процедуры или функции, достаточно просто установить точку останова в ее первой строке.

Условная точка останова

Для точки останова можно задать условие, при выполнении которого программа приостановит свою работу в данной точке (например, если значение переменной равно определенной величине). Условие (логическое выражение) вводится в поле Condition диалогового окна Add Source Breakpoint.

Если для точки останова задано условие, то программа приостанавливает свою работу только в том случае, если выражение, находящееся в поле Condition, истинно (его значение равно TRUE).

Кроме условия для точки останова, можно задать количество пропусков данной точки. Если во время добавления в программу точки останова в поле Pass count (Число пропусков) диалогового окна Add Source Breakpoint записать отличное от нуля число, то программа приостановит свою работу в этой точке только после того, как инструкция, находящаяся в строке, помеченной точкой останова, будет выполнена указанное число раз. Типичным случаем применения такой точки останова будет проверка кода внутри цикла. Например, если в цикле

for i := 1 to 100 do

begin

s:=s+i;

end;

поместить точку останова в строку s:=s+i;

В поле Condition ввести значение i=50. В результате установленная точка останова приостановит выполнение программы только тогда, когда i станет равной 50.

Изменение характеристик точки останова

Программист может изменить характеристики точки останова. Для этого надо из меню View выбрать команду Debug Windows, затем из меню следующего уровня - команду Breakpoints. В открывшемся диалоговом окне Breakpoint List нужно щелкнуть правой кнопкой мыши в строке, содержащей информацию о нужной точке останова, и в появившемся контекстном меню выбрать команду Properties. В результате открывается диалоговое окно Source Breakpoint Properties, в котором можно изменить характеристики точки останова, например, изменить условие (содержимое поля Condition) остановки программы в данной точке. Используя это же контекстное меню, можно быстро перейти к инструкции, в которой находится точка останова. Для этого надо выбрать команду Edit Source.