Can a function inside a parent code access the full workspace of that parent code?

12 次查看(过去 30 天)
I have a child function being called inside the original code. Can I have the function be able to access all of the variables (workspace) from the original code? If so, how?

采纳的回答

Evan
Evan 2013-7-30
编辑:Evan 2013-7-30
A nested function can access the variables stored in the workspace of its caller function:
function x = outer_function(a,b)
x = inner_function;
function y = inner_function
y = a + b;
end
end
>> outer_function(2,3)
ans =
5
  1 个评论
Walter Roberson
Walter Roberson 2013-7-30
Note: this strategy cannot be used to access a variable which exists in the caller function if the same variable name appears in an input or output position in the "function" declaration of the inner function.

请先登录,再进行评论。

更多回答(1 个)

Walter Roberson
Walter Roberson 2013-7-30
evalin('caller', 'who') to find the list of variables, and further evalin('caller') to get each of the values.

类别

Help CenterFile Exchange 中查找有关 Variables 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by