Присвойте значение переменной в заданной рабочей области
assignin(
присваивает значение ws
,var
,val
)val
к переменной var
в рабочей области ws
. Например, assignin('base','x',42)
присваивает значение 42 переменной x
в базовом рабочем пространстве MATLAB®.
Если val
требует оценки, MATLAB оценивает ее в функции, которая вызывает assignin
, не в рабочей области задан ws
. Если val
указатель на функцию, это должно быть evaluable в функции, которая вызывает assignin
.
assignin
функция полезна для этих задач:
Экспортирование данных от функции до базового рабочего пространства.
Из функции, изменяя значение переменной, которая задана в рабочей области функции вызывающей стороны. Например, можно изменить значение переменной в списке аргументов функции вызова.
assignin
функция не присваивает значения определенным элементам массива. Поэтому var
не может содержать индексы массива. Этот код приводит к ошибке.
X = 1:8; assignin('base','X(3:5)',-1);
Чтобы присвоить значения определенным элементам массива, используйте evalin
функция.
evalin('base','X(3:5) = -1')