I want to save variables from a nested function into the parent function workspace so that I can use these variables again in another nested function. How do I do this?
조회 수: 8 (최근 30일)
이전 댓글 표시
parent function ...
%user input numbers that go into BeamReactions
BeamReactions(BeamLength,BeamMass,Load,LoadX,LoadAngle)
%this is the function that I want to use answers from BeamReactions in
BeamLoadPlot(BeamLength,BeamWeightN,BeamWeightN_X,Load,LoadX,LoadAngle,FA_Y,FB_X,FB_Y)
댓글 수: 0
답변 (3개)
Walter Roberson
2018년 3월 23일
Don't do that. Instead, inside the parent function but before the definition of either nested function, assign some value to the variables, even if just []. That tells MATLAB that the variable is to be shared.
Stephen23
2018년 3월 23일
The whole point of nested functions is that you don't have to pass data as input/output arguments. All you need to do is define those variables in the workspace of the main function, and then all of the nested functions can access them:
function val = mymain()
val = [];
mynest()
function mynest()
val = 2;
end
end
Try calling it and see what the output is.
Selin Ertunan
2022년 12월 1일
hello, what exactly do we need to write inside the parentheses? When I write the code like this, I can see the nested variables, but still cannot save them as files.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Scope Variables and Generate Names에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!