Далее эти пакеты сохраняются в очереди сообщений, а ядро опять переходит в режим слежения за системой. С другой стороны, очередь непрерывно разбирается, анализируется ссылка на окно, которому предназначено событие, и вызывается его оконная функция — специальная подпрограмма, описанная по определенным правилам и зарегистрированная в операционной системе как объект назначения для сообщений. Вызванная оконная функция должна проанализировать событие по его идентификатору, используя дополнительные параметры, выполнить действия, обусловленные логикой программы, и вернуть в качестве результата функции код завершения обработки.
Дайте определение исключительной ситуации
Ответ: Исключительная ситуация (исключение) — это некоторая ситуация времени выполнения программы, которая требует специальной обработки. К таким событиям относятся ошибки времени выполнения программы, например, деление на ноль или попытка чтения информации из несуществующего файла.
Расскажите об объектах-исключениях
Ответ: При возникновении исключительной ситуации создает экземпляр некоторого класса, в зависимости от характера произошедшей ошибки и вызывает команду, передавая ей ссылку на этот объект. Все такие классы являются наследниками класса, что позволяет им быть -узнаваемыми для .
После вызова команды по очереди прерываются подпрограммы, вызвавшие ту подпрограмму, в которой произошла исключительная ситуация. Данный процесс останавливается, когда в одной из подпрограмм стека обнаруживается обработчик соответствующего класса исключительных ситуаций.
Любая подпрограмма может сама сгенерировать исключительную ситуацию с помощью оператора. Расскажите о методах обработки исключительных ситуаций Ответ: Когда некоторый фрагмент программного кода необходимо защитить от досрочного завершения по ошибке, его следует заключить в блок обработки исключения. Таких блоков предусмотрено два: * Блок обработки исключений! пытается выполнить заданный фрагмент программы, а, в случае появления исключения, передает управление специальному обработчику, расположенному в секции Ехсер*.. Блок обработки исключений может быть использован в ситуациях, когда известно, как именно нужно реагировать на произошедшую ошибку, даже если программа и не пытается установить ее тип.
|