Четвертый BORLAND С++ и его окружение

Диагностические макрокоманды


Для отладки программного кода С++ предусмотрен ряд макрокоманд, которые находятся в check.h. Их можно использовать в Windows и DOS. Существует два типа макрокоманд - заданные по умолчанию (CHECK, PRECONDITION, TRACE и WARN) и расширенные (CHECKX, PRECONDITIONX, TRACEX и WARNX).

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

проверку значений и вывод сообщений. Расширенные макрокоманды

позволяют создавать макрогруппы и избирательно разрешать или запрещать их. Расширенные макрокоманды позволяют вам избирательно разрешать или запрещать макрокоманды на основе порогового значения.

Управлять расширением диагностических макрокоманд можно с

помощью трех предопределенных идентификаторов препроцессора:

__DEBUG__, __TRACE и __WARN. Если при компиляции определяется

один из этих идентификаторов (с помощью параметра -D), то расширяются соответствующие макрокоманды, и генерируется диагностический код.

Диагностические макрокоманды разрешаются согласно следующему правилу:

__DEBUG=1 __DEBUG=2 __TRACE _WARN

PRECONDITION Ч Ч

PRECONDITIONX Ч Ч

CHECK Ч

CHECKX Ч

TRACE Ч

TRACEX Ч

WARN Ч

WARNXЧ

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

разместите в ее важнейших точках диагностические макрокоманды и

скомпилируйте а разрешением соответствующего идентификатора. Диагностическая версия библиотек классов строится аналогично.



Содержание раздела