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

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?

 Risposta accettata

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 Commento

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.

Accedi per commentare.

Più risposte (1)

evalin('caller', 'who') to find the list of variables, and further evalin('caller') to get each of the values.

Categorie

Scopri di più su Scope Variables and Generate Names in Centro assistenza e File Exchange

Richiesto:

il 30 Lug 2013

Community Treasure Hunt

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

Start Hunting!

Translated by