Блок try…except

   
На этом шаге мы познакомимся с общими правилами использования блока try...except.

   
Блок try...except служит для обработки конкретных исключительных ситуаций (или более кратко - исключений).
Этот блок имеет два наиболее характерных способа записи (полный и сокращенный), первый из которых неформально можно представить в следующем виде:

try
  <СписокОператоров1> 
except
  on  <Исключение1> do <Оператор1>; 
  on  <Исключение2> do <Оператор2>;
           .   .   .   .
  on  <ИсключениеN> do <ОператорN> 
  else <СписокОператоровM> 
end;

   
Опишем принцип работы полного варианта блока try...ехсерt. Если в процессе работы проекта ошибок времени выполнения не происходит,
то наличие блока обработки исключительных ситуаций никакого влияния на работу не оказывает. Если же при выполнении СпискаОператоро1 между
зарезервированными словами try и except возникает исключительная ситуация, то выполнение СпискаОператоров1 прерывается, и
управление передается в блок обработки исключения (Exception Block), который по структуре похож на оператор case. В случае, когда возникшая
исключительная ситуация совпадает с одним из заголовков альтернатив on...do, то выполняется соответствующий этой
альтернативе Оператор, в противном случае выполняется СписокОператоров2 (после зарезервированного слова else).

   
Кроме описанного полного варианта записи блока try...except, возможен еще и сокращенный, который в неформальном синтаксисе выглядит так:

try
  <СписокОператоров1> 
except
  <СписокОператоров2> 
end;

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

   
На следующем шаге мы рассмотрим блок try...finally.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий