how to do a command line only if it is possible?

2 views (last 30 days)
Dear all, sorry for the "stupid" question. I am writing a code and sometimes happens that i want to recall a previous setting only if it exists, so i am using try as following
try setting=previous_setting; catch end
in this way if the previous setting exists it will used, if not nothing happens. Now i think that using try and catch is not so nice since it should be used for error tracing. Do you have any advice (i would not like to use if)? thank you all catch end
in this way if the previous setting exists it will used, if not nothing happens. Now i think that using try and catch is not so nice since it should be used for error tracing. Do you have any advice (i would not like to use if)? thank you all

Accepted Answer

Thorsten
Thorsten on 9 Aug 2016
if exist('previous_setting')
end
If previous_setting is variable, use
exist('previous_setting', 1)
if it is an m-file, use
exist('previous_setting', h)
See
help exist
for further options.
  3 Comments
Luigi Bruno
Luigi Bruno on 9 Aug 2016
thank you for the answer. i would use the lowest number of strings in the code (this is why i dont want to use if). So if according to you there is no error to use try w/o catch i will proceed like that.
John D'Errico
John D'Errico on 9 Aug 2016
As I pointed out in the test though, exist is faster. If this is a question of milliseconds, it may not matter. Much time is spent by programmers looking for an optimal solution, when the cost is only a few milliseconds. Of course, if the code will be executed thousands or millions of times you should worry about the difference. But for something that will happen once, even one second of programmer time spent on the choice is a net waste of time.

Sign in to comment.

More Answers (0)

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!