сіх наступних за нею елементів, поки не буде зазначена інша директива.
Обробка виняткових ситуацій
Виняткова ситуація - це подія, перериває нормальне виконання програми. Інакше кажучи, виняткова ситуація є помилкою, виникає під час виконання програми. У мові Object Pascal існують спеціальні засоби для обробки виняткових ситуацій.
Виняткові ситуації , що виникають під час виконання програми, описуються в мові Object Pascal за допомогою спеціального об'єктного типу Exception. На базі цього типу визначено ряд дочірніх класів, відповідних найбільш типовим винятковим ситуацій. Імена класів-нащадків Exception починаються з літери Є.
У Object Pascal визначено дві конструкції для роботи з винятковими ситуаціями: try ... except і try ... finally .
Блок try ... except
Блок try ... except застосовується для реакції на конкретну виняткову ситуацію (додаток 8).
Якщо при виконанні операторів, розташованих в розділі try, не виникає виняткова ситуація, то звернення до розділу except взагалі не відбувається. Якщо ж у розділі try виникає виняткова ситуація, то управління відразу передається розділу except. Розділ except містить набір операторів on ... d o, що визначають реакцію на виняткові ситуації. Між ключовими словами on і do вказується ім'я класу виняткової ситуації. Оператор, розташований після слова do, призначено її обробки (після обробки виняткової ситуації управління не передається тому в розділ try ).
Блок try ... finally
Блок try ... finally використовується в тих випадках, коли необхідно виконати деякі дії навіть у разі виникнення виняткової ситуації (наприклад, звільнити зайняту пам'ять) (додаток 9).
У даній конструкції спочатку виконуються оператори, розташовані в розділі try. Якщо при їх виконанні не мож нік ло виняткової ситуації, то виконуються оператори, розташовані в розділі finally. Якщо ж при виконанні операторів у розділі try виникає виняткова ситуація, то управління відразу передається першому оператору розділу finally.
Ця конструкція не обробляє виняткову ситуацію, а лише служить для захисту виділених ресурсів, дозволяючи звільнити їх навіть у разі виникнення виняткової ситуації.
Виняткову ситуацію можна програмно викликати за допомогою спеціального оператора raise.
1.2 Основні концепції об'єктно-орієнтованого програмування ...