Azzera filtri
Azzera filtri

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

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Thorsten
Thorsten il 9 Ago 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 Commenti
Luigi Bruno
Luigi Bruno il 9 Ago 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 il 9 Ago 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by