Установленные исключения Синтаксически выражение throw появляется в двух формах, throw throw выражение Выражение throw устанавливает исключение. Самый внутренний блок try, в котором устанавливается исключение, используется для выбора оператора catch, который обрабатывает исключение. Выражение throw без аргумента повторно устанавливает текущее исключение. Обычно оно используется когда, для дальнейшей обработки исключение необходим второй обработчик, вызываемый из первого. Установленное выражение - статический, временный объект, который хранится до тех пор, пока не производится выход из ветви обработки особых ситуаций. Вьгражение захватывается обработчиком, который может использовать его значение, void fooQ { int i; throw i; } main() { try { fooQ; } catch(int n) { . . . } } Блоки try Синтаксически, блок try имеет такую форму: try составной оператор список обработчиков Блок try - контекст для принятия решения о том, какие обработчики вызываются для установленного исключения. Порядок, в котором определяются обработчики, определяет тот порядок, в котором проверяются обработчики для установленного исключения соответствующего типа, try { . . . throw(“SOS”); . . .
RkJQdWJsaXNoZXIy MTExODQxMg==