save, _save

Сохраните состояние идентификатора

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

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

Синтаксис

save x1, x2, …
_save(x1, x2, …)

Описание

В процедуре, оператор “save x;” сохраняет состояние глобального идентификатора x.

save оператор сохраняет состояния идентификаторов — т.е. их значения и свойства — во время осуществления процедур. Исходное состояние идентификаторов восстанавливается, когда осуществление процедуры закончено. Это содержит, даже когда ошибка происходит.

save оператор должен использоваться только в теле процедуры. Это не может быть названо на интерактивном уровне.

Аргументы save оператор оценен, как обычно. В операторе ‘save x;’, символ x должен оценить к идентификатору y, сказать. Это - состояние идентификатора y это сохранено.

save оператор очень похож на save объявление для процедур. Основное различие для объявления - то, что, для того, чтобы сделать объявление, нужно знать, что имена идентификаторов сохранены заранее. save оператор позволяет сохранять идентификаторы, которые известны только во времени выполнения.

save оператор обычно используется для того, чтобы временно изменить свойства идентификатора, например, путем вызова функционального assume. В конечном счете исходные свойства идентификаторов восстанавливаются, даже если ошибка происходит.

Оператор ‘save x1, x2, ...;’эквивалентно вызову функции _save(x1, x2, ...).

Примеры

Пример 1

Во-первых, мы задаем свойство для идентификатора y:

assume(y < 0)

Свойства идентификатора сохранены в x изменяются временно во время выполнения следующей процедуры p:

p := proc(x : DOM_IDENT)
begin
    save x;
    assume(x > 0);
    is(x > 0)
end_proc:

От результата процедуры мы видим что свойства y были изменены во время выполнения p:

p(y)

Однако исходные свойства были восстановлены после выхода из p. Идентификатор y имеет его исходные свойства:

is(y > 0), is(y < 0)

Восстановление исходных свойств гарантируется, даже если некоторая ошибка произойдет в процедуре. Следующая процедура q повышает ошибку после изменения идентификатора, данного x:

q := proc(x : DOM_IDENT)
begin
    save x;
    assume(x > 0);
    error("some error")
end_proc:
q(y)
Error: some error [q]

Тем не менее, исходные предположения о y восстанавливаются:

is(y > 0), is(y < 0)

unassume(y): delete p, q:

Параметры

x1, x2, …

Оценка символов к идентификаторам

Возвращаемые значения

Пустой объект типа DOM_NULL.

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

Функции MuPAD