1
访问substructs比方说,我有一个结构,像这样:是否有可能基于位置
master = struct('a',struct(),'b',struct())
R中,这将是向量的名单,我可以使用主[1访问第一个或第二个元素]或主[2]。是否有可能在Matlab中做到这一点?
谢谢!
访问substructs比方说,我有一个结构,像这样:是否有可能基于位置
master = struct('a',struct(),'b',struct())
R中,这将是向量的名单,我可以使用主[1访问第一个或第二个元素]或主[2]。是否有可能在Matlab中做到这一点?
谢谢!
简短的回答是你不能。
你可以使用dynamic field references与结构的fieldnames
:
master = struct('a',struct('hi', 1),'b',struct('hi', 2));
myfields = fieldnames(master); % Need temporary variable
master.(myfields{1})
将返回:
ans =
hi: 1
您还可以创建结构的数组:
master(1) = struct('a', 1, 'b', 2);
master(2) = struct('a', 3, 'b', 4);
你可以类似于R的索引(sorta):
>> [master(1).a master(2).b]
ans =
1 4
>> [master(:).a]
ans =
1 3
对不起,有一点自大,我的编码...现在修复,只是创建两个空的子结构。 –