struct and getfield variable value

1 回表示 (過去 30 日間)
Vincent I
Vincent I 2013 年 6 月 5 日
Hi, I'm trying to get the value that's in the variable but I can only get to the name of the variable and not the actual value. Thank you
w = getfield(evalin('base','whos'),{13,1},'name')
w = Variable

回答 (2 件)

Image Analyst
Image Analyst 2013 年 6 月 5 日
What workspace are you trying to import this variable (that lives in the base workspace) into? The workspace of one of your functions? How did a variable get into the base workspace anyway? Did you run a script and it left the variable in the base workspace, and now you're running a function, which has its own local workspace, and now you want to import the variable that your script left in the base workspace into the workspace of your function? If what I said totally confused you then you need to read up on workspaces. Also, look at the FAQ: http://matlab.wikia.com/wiki/FAQ#How_can_I_share_data_between_callback_functions_in_my_GUI.28s.29.3F
  1 件のコメント
Vincent I
Vincent I 2013 年 6 月 5 日
編集済み: Vincent I 2013 年 6 月 5 日
yes, I left the workspace. I'm running in a different function and I'm trying to access the base ws where the variable was saved and get its value.
nvm.... its been a long day
evalin('base','variable')
no need for w = getfield(evalin('base','whos'),{13,1},'name')

サインインしてコメントする。


Jan
Jan 2013 年 6 月 5 日
Trying to transport variables magically remote controlled is obviously a bad idea. Although it might work, I recommend not to do this:
w = getfield(evalin('base','whos'), {13,1}, 'name')
value = evalin('base', w)
Brrr. You would suffer.
  2 件のコメント
Vincent I
Vincent I 2013 年 6 月 6 日
Sounds good Thank you
Daniel Shub
Daniel Shub 2013 年 6 月 6 日
Did you miss the part where Jan said I recommend not to do this

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by