Delphi. Обработка исключительных ситуаций

Прикладные науки

Исключительная или особая ситуация представляет собой сигнал о произошедшей в приложении ошибке. В Delphi исключительная ситуация является объектом, содержащим информацию, идентифицирующую ошибки и место их возникновения.

Исключительная ситуация генерируется (возбуждается) в двух случаях:

  1. ошибка произошла в библиотеке времени выполнения, в библиотеке визуальных компонент или в самой ОС;
  2. возбуждение исключительной ситуации самим кодом приложения.

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

Исключительная ситуация облегчает написание приложения, устойчивого к ошибкам.

Конструкция для обработки исключительной ситуации.

  1. Try  <защищ. код, т.е. код, в котором может произойти ошибка>

        Finally <код завершения>

End.

 

  1. Try

           Except  <блок обработки исключительной ситуации>

       End.

 

Блок Finally выполняется  в любом случае, произошла в защищ. коде ошибка или нет.

Блок  Except будет выполнен только, если в защищ. коде будет ошибка. Внутри блока Except создаются обработчики ошибочных ситуации для класса исключительных ситуаций.

 On <класс исключительной ситуации> Do <обработка>

Классы исключительных ситуаций.

  1. Exception — базовый класс исключительных ситуаций.
  • EMathError (класс – предок исключений при операциях с плавающей точкой):

      – EInvalidOp (происходит при передаче математическому сопроцессору ошибочной конструкции);

      – EOverFlow (возникает как результат переполнения информации с плавающей точкой при больших значениях);

      – EUnderFlow (возникает как результат переполнения информации с плавающей точкой при маленьких значениях);

Book-Science
Добавить комментарий