outputs from nested functions

2 views (last 30 days)
Muazma Ali
Muazma Ali on 5 Dec 2021
Answered: Benjamin on 5 Dec 2021
Hi
If u nest two functions within a parent function, can the second nested function make use of the output from the first nested function to compute its output variables--?
I assume the second nested function can make use of the local variables from the first nested function

Answers (1)

Benjamin
Benjamin on 5 Dec 2021
Each nested function has its own workspace but they all 'see' variables from the parent workspace.
function parent()
x = 0;
function child_1()
y = 0;
% this function can use x (from the parent workspace) and y (local
% variable in this workspace).
end
function child_2()
% this function can use x (from the parent workspace).
% any variable called y here would be local to this workspace and
% separate from the y in child_1's workspace.
end
end
It is possible to have the second nested function make use of the output from the first nested function, either by (1) making the second function call the first function, or (2) having the first function calculate variables in the parent workspace.
If you have a more specific question or problem, post it and someone can give more pertinent advice for the particular situation you have in mind. I've found that nested functions are generally a very good and efficient way to do things in MATLAB.

Community Treasure Hunt

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

Start Hunting!