Creating structure using eval function - Part 2 Question

2 Ansichten (letzte 30 Tage)
Thulasi Durai Durai Samy
Thulasi Durai Durai Samy am 6 Jul. 2012
Hello
This time I will make the question more specific
Laminate = struct('Raw', -1, 'ttm', -1, 'USD', zeros(3));
evalin('base','',Laminate,'')
Following error in matlab
??? Undefined function or method 'evalin' for input arguments of type 'struct'.
Error in ==> Laminator_ProV>LamDetailstToWorkSpace at 1405
evalin('base','',Laminate,'')
??? Error while evaluating uimenu Callback
Can some body help me, thanks in advance
  2 Kommentare
C.J. Harris
C.J. Harris am 6 Jul. 2012
Are you sure it's 'evalin' you want to use and not 'assignin'?
Thulasi Durai Durai Samy
Thulasi Durai Durai Samy am 9 Jul. 2012
Hello I tried with 'assignin'. I was not aware during that time, now I am using 'assignin'. I am satisfied, thanks

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jan
Jan am 9 Jul. 2012
Bearbeitet: Jan am 9 Jul. 2012
Laminate_local = struct('Raw', -1, 'ttm', -1, 'USD', zeros(3));
assignin('base', 'Laminate', Laminate_local)
I've addeded "_local" just to avoid further confusion.
Let me mention that I'd never use ASSIGNIN, EVALIN or their brothers, because they impede the debugging by letting the variables appear magically in the workspace. When these evail commands are used multiple times, it gets impossible to find out, where changes of the values are comming from. Much better, safer, cleaner, faster and nicer is transporting the variables as output of the function.

Kategorien

Mehr zu Debugging and Analysis finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by