exponenta event banner

перебросок

Ошибка переиздания

Примечание

Начиная с версии 7.5, MATLAB ® поддерживает обработку ошибок, основанную на MException класс. Запрос rethrow со структурным аргументом, как описано на этой странице, теперь заменяется вызовом rethrow с MException объект, как описано на справочной странице для rethrow. rethrow вызов со структурным вводом будет удален в будущей версии.

Синтаксис

rethrow(errorStruct)

Описание

rethrow(errorStruct) повторно выдает ошибку, указанную в errorStruct. Текущая выполняемая функция прерывается, и управление возвращается на клавиатуру (или на любую вложенную catch блок). errorStruct аргумент должен быть структурой MATLAB, содержащей, по крайней мере, message и identifier поля:

Fieldname

Описание

message

Текст сообщения об ошибке

identifier

Идентификатор ошибки

stack

Сведения об ошибке из стека программ

Сведения об идентификаторах ошибок см. в разделе MException.

Примеры

rethrow обычно используется в сочетании с try, catch инструкции для повторной выдачи ошибки из catch блок после выполнения catch-связанные операции. Например,

try
   do_something
catch
   do_cleanup
   rethrow(previous_error)
end

Совет

errorStruct ввод может содержать поле stack, идентичный по формату выходному сигналу dbstack команда. Если stack поле присутствует, стек ошибки повторного преобразования будет установлен на это значение. В противном случае стек будет установлен в строку, в которой происходит повторный возврат.

Представлен до R2006a