MException.last

Класс: MException

Возвратите последнее неперехваченное исключение

Синтаксис

исключение = MException.last
MException.last ('сбрасывается')

Описание

exception = MException.last возвращает содержимое последний раз выданного, непойманного объекта MException. MException.last не установлен, если последнее исключение отловлено оператором try/catch. MException.last является статическим методом класса MException.

MException.last('reset') очищает свойства исключения, возвращенного в MException.last. Это устанавливает свойства MException identifier и message на пустой символьный вектор, свойство stack к 0 1 структура и свойство cause к массиву пустой ячейки.

Примеры

развернуть все

Заставьте MATLAB® выдавать, но не выгода, исключение.

A = 25;
A(2)
Index exceeds matrix dimensions.

Получите неперехваченное исключение.

exception = MException.last
exception = 

  MException with properties:

    identifier: 'MATLAB:badsubscript'
       message: 'Index exceeds matrix dimensions.'
         cause: {}
         stack: [0x1 struct]

Вызовите функцию surf без входных параметров.

surf
Error using surf (line 49)
Not enough input arguments.

Получите неперехваченное исключение.

exception = MException.last
exception = 

  MException with properties:

    identifier: 'MATLAB:narginchk:notEnoughInputs'
       message: 'Not enough input arguments.'
         cause: {}
         stack: [1x1 struct]

Получите последнее, неперехваченное исключение.

MException.last('reset')
exception = MException.last
exception = 

  MException with properties:

    identifier: ''
       message: ''
         cause: {0x1 cell}
         stack: [0x1 struct]

Советы

  • Используйте MException.last только из Командного окна, не в функции.

Представленный в R2007b

Была ли эта тема полезной?