Try - початок блоку catch у керуючій структурі try-catch
початок блоку catch у керуючій структурі try-catch
Послідовність виклику
Керуюча структура try - catch може бути використана для керування кодом програми, що може формувати помилки.
Коли виконується керуюча структура try-catch, зазвичай виконуються лише інструкції між ключовими словами try і catch. Однак, якщо виникає помилка під час виконання будь-якої з цих інструкцій, то помилка записується, інструкції, що залишилися, аж до ключового слова catch пропускаються, і виконуються інструкції між ключовими словами catch і end , використовуючи режим обробки помилок за умовчанням (див. errcatch).
Записану помилку можна вилучити за допомогою функції lasterror.
Інструкції блоку catch, як і саме ключове слово catch, можуть бути опущені, якщо немає альтернативних інструкцій.
Зауважте, що можна також використовувати функцію execstr з аргументом 'errcatch' для обробки помилок. Це може бути особливо корисним для обробки синтаксичних помилок.
Зауважте також, що керуюча структура try-catch певною мірою схожа на:
Вона використовує той самий внутрішній механізм, що й errcatch. Саме з цієї причини errcatch або execstr(. "errcatch") не можуть бути включені до керуючої структури try-catch. Цей контекст виявляється і формується особливе повідомлення про помилку (ця помилка відловлюється і зберігається як будь-яка інша помилка, якщо на неї поставлена пастка в блоці try).
Тим не менш, керуючі структури try - catch можуть бути вкладені один в одного (див. приклад 2 нижче).