How can I access the variables in base workspace in GUI?
Mostra commenti meno recenti
Hello there,
I'm working on a GUI that needs to access some variables in base workspace. I want to find all the variables that start with 'signal_' in base workspace, so my code is:
all_signals=who('signal_*'); % find all the variables that start with 'signal_' and the output is a cell
But the problem is that GUI has its own workspace and cannot access the variables in base. I've tried evalin, which I know is not recommended, and I got this error: Undefined function or method 'evalin' for input arguments of type 'cell'
And then I tried char(), but the output is just character.
So is there any other idea how to solve this problem? Thanks in advance.
1 Commento
Stephen23
il 9 Mar 2016
As you are discovering using evalin is an incredibly buggy way to pass data to the base workspace. It is also very slow and obfuscated. Read the documentation and you will find that evalin is the least recommended way to pass data between workspace. Just pass the data as arguments, and your code will be much more robust.
And of course evalin suffers from all of the disadvantages of eval, sadly commonly used by beginners who don't mind writing buggy, slow, and obfuscated code:
Risposta accettata
Più risposte (0)
Categorie
Scopri di più su Matrix Indexing in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!