Syntaxe obslužné rutiny
Tato část popisuje syntaxi a použití strukturovaného zpracování výjimek, jak je implementováno v microsoft C/C++ Optimalizace kompilátoru. Následující klíčová slova interpretuje kompilátor jako součást mechanismu strukturovaného zpracování výjimek.
Klíčové slovo | Popis |
---|---|
__try | Začíná strážené tělo kódu. Používá se s klíčovým slovem __except k vytvoření obslužné rutiny výjimkynebo s klíčovým slovem __finally k vytvoření obslužné rutiny ukončení . |
__except | Spustí blok kódu, který se spustí pouze v případě, že v rámci přidruženého bloku __try dojde k výjimce. |
__finally | Zahájí blok kódu, který se spustí vždy, když tok řízení opustí přidružený __try blok. |
__leave | Umožňuje okamžité ukončení bloku __try, aniž by to způsobilo neobvyklé ukončení a jeho snížení výkonu. |
Kompilátor také interpretuje GetExceptionCode, GetExceptionInformationa AbnormalTermination funkce jako klíčová slova a jejich použití mimo příslušnou syntaxi zpracování výjimek generuje chybu kompilátoru. Níže jsou uvedené stručné popisy těchto funkcí.
Funkce | Popis |
---|---|
GetExceptionCode | Vrátí kód, který identifikuje typ výjimky. Tuto funkci lze volat pouze z výrazu filtru nebo bloku obslužné rutiny výjimky. |
GetExceptionInformation | Vrátí ukazatel na EXCEPTION_POINTERS strukturu obsahující ukazatele na kontextový záznam a záznam výjimky. Tuto funkci lze volat pouze z výrazu filtru obslužné rutiny výjimky. |
abnormální | Určuje, jestli tok řízení opustil přidružený __try blok postupně po provedení posledního příkazu v bloku. Tuto funkci lze volat pouze z __finally bloku obslužné rutiny ukončení. |