Шаг 29.
Отладчик Turbo Debugger for DOS.
Задание условий и действий

    На этом шаге мы рассмотрим примеры задания условий и действий.

    Для задания активизации точки останова и того, что должно при этом происходить, используется окно Conditions and Actions (рисунок 1).


Рис.1. Диалоговое окно Conditions and Actions

    Обычно для каждой конкретной точки останова задается одно условие или выражение действия. Однако отладчик позволяет задавать несколько выражений. Кроме того, с одной точкой останова можно связать несколько условий и действий.

    Чтобы задать набор условий, выберите кнопку с зависимой фиксацией Changed Memory of Expression, введите в поле ввода Condition Expression условие, выберите кнопку Add под блоком ввода Condition Expression (если вводится несколько выражений, повторите эти шаги). Кнопка Delete под полем Condition Expression позволяет удалить из поля ввода Condition Expression текущее подсвеченное выражение.

    При выборе кнопки с зависимой фиксацией Execute, Log, Enable Group или Disable Group в группе Action, нужно задать набор условий, по которым Turbo Debugger будет активизировать точку останова. Набор условий состоит из одного или более выражений. Чтобы задать их, выберите кнопку с зависимой фиксацией Execute, Enable Group или Disable Group, введите действие в поле ввода Action Expression и выберите кнопку Add под полем ввода Action Expression. Чтобы при активизации точки останова выполнять более одного выражения, повторите эти шаги. При задании нескольких условий и действий они вычисляются в порядке их ввода.

    Например, при задании таких параметров, как на рисунке 2, будет выведено значение 5, вне зависимости от исходных данных.


Рис.2. Задание действий

    Это объясняется тем, что при изменении значения переменной a будет выполнено присваивание a:=5.

    Если в поле Condition Expression разместить переменную f вместо a (рисунок 3), то будет выведено правильное значение, так как значение переменной f не изменяется и присваивание a:=5 не выполнится.


Рис.3. Замена a на f

    При выборе кнопки Enable Group или Disable Group для ссылки на группы точек останова, которые нужно разрешить или запретить, наберите в поле Action Expression номер группы.

    Кнопка Delete под полем Action Expression позволяет удалить из набора действий текущее подсвеченное выражение. Закончив ввод действий, выберите в диалоговом окне Condition Action кнопку OK.

    Условия и действия точки останова управляются заданными выражениями. Turbo Debugger вычисляет выражение точки останова относительно области действия того места, где находится точка останова. Используя синтаксис переопределения области действия, вы можете обращаться к значениям любого определенного объекта данных, однако это замедляет вычисления.

    Чтобы модифицировать точку останова в другом (не загруженном в данный момент) модуле, используйте пункт меню View | Another | Module.

    На следующем шаге мы рассмотрим удаление точек останова.




Предыдущий шаг Содержание Следующий шаг