有没有一种快速的方法(例如一行代码),可以将一组变量“倒入”一个结构中,并使用变量名称作为结构字段?“load”函数基本上可以实现此功能,但保存和加载到临时文件似乎很麻烦。
例如:
或者更好的方法是:
此外,反向操作怎么办(即将字段值转储到当前作用域中,作为以字段命名的变量)?
此外,这里有一个相关的新闻组讨论帖。
例如:
clear
a = 'adsf'
b = rand(10);
x = var2struct(a,b)
x.a
x.b
或者更好的方法是:
x = var2struct(['a';'b'])
此外,反向操作怎么办(即将字段值转储到当前作用域中,作为以字段命名的变量)?
clear
x.a='asdf'
x.b=rand(10);
dumpstruct(x)
a
b
此外,这里有一个相关的新闻组讨论帖。
var2struct
的第二个版本,使用evalin('caller',n)
实际上会在调用evalin
的函数中执行求值,这将是var2struct
本身而不是调用var2struct
的函数。这就是为什么我更喜欢var2struct
的第一个版本...它看起来更简洁、更通用。 - gnovice