error

Повысьте заданное пользователями исключение

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

error(message)

Описание

error(message) прерывает текущую процедуру, возвращается к интерактивному уровню и отображает сообщение об ошибке message.

Если ошибка не фиксируется через traperror процедурой, которая прямо или косвенно вызвала текущую процедуру, управление возвращено в интерактивный уровень и строку message распечатан как сообщение об ошибке.

Печатное сообщение об ошибке имеет форму Error: message [name], где name имя процедуры, содержащей вызов error. Смотрите примеры.

Ошибки могут быть зафиксированы функциональным traperror. Если ошибка происходит в то время как аргументы traperror оценены, управление возвращено в процедуру, содержащую вызов traperror а не к интерактивному уровню. Никакое сообщение об ошибке не распечатано. Возвращаемое значение traperror 1028 когда это фиксирует ошибку, повышенную error; смотрите Пример 2.

Функциональный error полезно, чтобы повысить ошибку в части проверки типа пользовательской процедуры, когда эта процедура вызвана недействительными аргументами.

Примеры

Пример 1

Если делителем следующей простой стандартной программы деления является 0, затем ошибка повышена:

mydivide := proc(n, d) begin
  if iszero(d) then
    error("Division by 0")
  end_if;
  n/d
end_proc:
mydivide(2, 0)
Error: Division by 0 [mydivide]

Пример 2

Когда ошибка повышена в следующей процедуре p, управление сразу возвращено в интерактивный уровень. Второй вызов print никогда не выполняется. Обратите внимание на то, что имя процедуры распечатано в сообщении об ошибке:

p := proc() begin
  print("entering procedure p");
  error("oops");
  print("leaving procedure p")
end_proc:
p()

Error: oops [p]

Следующая процедура q вызывает процедуру p и фиксирует любую ошибку, которая повышена в p:

q := proc() begin
  print("entering procedure q");
  print("caught error: ", traperror(p()));
  print("leaving procedure q")
end_proc:
q()

Параметры

message

Сообщение об ошибке: строка

Смотрите также

Функции MuPAD