Система визуального объектно-ориентированного проектирования C++Builder 103

2.4.8.3 Что делать, если произошла ошибка выполнения

Если ваше приложение откомпилировалось и стало выполняться, это, увы,
еще не означает, что оно правильно работает. В нем может быть еще множество
ошибок времени выполнения. Это могут быть постоянные логические ошибки,
проявляющиеся всегда при выполнении некоторых частей вашей программы. Это
могут быть ошибки, проявляющиеся только при каких-то сочетаниях данных:

ошибки деления на нуль, переполнения, открытия несуществующего файла и т.п.
Наконец, могут быть случайные перемежающиеся ошибки, когда одна и та же за-
дача иногда выполняется нормально, а иногда — нет. Такие ошибки, которые наи-
более трудно вылавливать, связаны обычно с отсутствием инициализации пере-
менных в каких-то режимах работы. В этом случае выполнение приложения зави-
сит от случайного состояния памяти компьютера.

Во всех подобных случаях причины ошибок выявляются в процессе отладки.
Наше приложение тоже не свободно от ошибок времени выполнения. Запустите
его на выполнение и щелкните на кнопке. Все вроде бы сработает нормально. Но
попробуйте повторно щелкнуть на той же кнопке. Выполнение прервется и перед
вами возникнет окно, приведенное на рис. 2.34.

Рис. 2.34

Сообщение отладчика об ошибке
переполнения

Перевод текста в этом окне гласит: «Проект Pdebug.exe вызвал генерацию иск-
лючения класса EOverflow с сообщением «Переполнение при операции с плавающей
запятой». Процесс остановлен. Используйте команды Step или Run для продолжения».

Это сообщение об ошибке, приведшей к генерации так называемого исключе-
ния. Об исключениях вы подробно узнаете в главе 4 в разделе 4.9. Сейчас пока пе-
ред нами стоит вопрос: Что делать? Щелкнув на кнопке О К вы попадете в окно Ре-
дактора Кода и увидите в нем (рис. 2.35) код вашей программы с выделенной стро-
кой, около которой стоит зеленая стрелка. Это тот оператор, при выполнении кото-
рого произошла ошибка.

Дальнейшие ваши действия сводятся к одной из следующих альтернатив.
• Можно нажать клавиши Ctrl+F2 и тем самым прервать выполнение и отладку

приложения.

Это, конечно, возможный вариант действий, если вы уже поняли, в чем за-
ключается ошибка, и готовы ее исправить. Если же нет, то вам придется анализи-
ровать ситуацию, обдумывать возможные варианты ее исправления и т.д. Береги-
те свое время и серые клеточки своего мозга! Если неясно, в чем заключалась

Рис. 2.35

Окно Редактора Кода с выделенной
строкой, в которой произошла
ошибка

М Udebuu срр