Доступ к переменным изнутри функции с помощью глобалов - PullRequest
2 голосов
/ 18 января 2011

Я хочу получить доступ к переменным внутри функции, используя глобальные переменные

Global x y z
Answer = MyFunction(4)
y



Function Result = MyFunction(x)
y=x+1;
z=y+1;

Я хотел бы иметь возможность получить доступ к значению y с момента последнего вызова функции.Возможно ли это сделать?

1 Ответ

3 голосов
/ 18 января 2011

Создайте следующую функцию в пути поиска MATLAB:

function z = myFunction(x)
global y
fprintf('in myFunction -> y = %f\n', y);
y=x+1;
z=y+1;
end

Вызов myFunction из сценария или командной строки.

global y;
y = 0;
answer = myFunction(3);
fprintf('past myFunction -> answer = %f\n', answer);
fprintf('past myFunction -> y = %f\n', y);

Поскольку классы дескрипторов были введены вОбъектная модель MATLAB, я предлагаю не использовать globals .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...