필터 지우기
필터 지우기

Function outputs inside another function

조회 수: 3 (최근 30일)
Dimitris K
Dimitris K 2021년 8월 3일
댓글: Dimitris K 2021년 8월 3일
Hello everyone,
I am writing a script where I call a main function to update my variables. However this function has two outputs only and inside this function i call other functions with other outputs. So the outputs of the other functions are lost from workspace when the programms finishes as they are not output of my main function...
How can i also have all these outputs remaining in my workspace so that i can use them later in my script?

채택된 답변

Yongjian Feng
Yongjian Feng 2021년 8월 3일
Why not extend the outputs of your main function to output those information you want?
If for some reason that you can't extend the output of your main function, there are still some options:
  1. Use global variables. Your "other" functions output to the global variables, so they can be stored.
  2. A more object-oriented approach, using singleton. Create a singleton outside your main function. Store all the information to the singleton, which will stay even after your main function returns.
  댓글 수: 6
Yongjian Feng
Yongjian Feng 2021년 8월 3일
Using a good naming convention is definitely a good idea.
Dimitris K
Dimitris K 2021년 8월 3일
Thank you both for your answers ! They are very helpful! I think i will use a structure eventually and that was what i was thinking initially. I was just wondering if there was a more neat way, but i think this is the neatest way possible and the most straightforward to implement.
The only problem with the structure arrays is the indexing and when you are using them as input in functions!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrix Indexing에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by