Obsługi warunków i stanów wyjątkowych

Try except

Składnia

try sekwencja-instrukcji; {* }
except [on identyfikator-warunku do] instrukcja [else sekwencja-instrukcji]
end;

Informacje:

  • jeśli podczas wykonywania ciągu instrukcji {* } nie zostanie wywołany żaden warunek, to ciąg instrukcji po słowie except jest ignorowany i program przechodzi do wykonania następnej instrukcji po słowie **end**,
  • jeśli w ciągu {* } wystąpi wywołanie warunku (błąd, stan wyjątkowy, instrukcja raise), to zostanie on obsłużony przez odpowiedni blok po słowie except, ponowne naciśnięcie run spowoduje wykonanie dalszej części programu,
  • instrukcje try … except mogą być zagnieżdżone.

Try finally

Składnia

try sekwencja_instrukcji; {* }
finally sekwencja_instrukcji
end;

Informacje

  • instrukcje po słowie finally zostaną wykonane zawsze,
  • jeśli w ciągu testowanym {* } zostanie wygenerowany warunek lub stan wyjątkowy, to pozostałe instrukcje są ignorowane i następuje natychmiastowe przejście do wykonania instrukcji po słowie finally.
O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License