查看单个帖子
旧 2019-12-10, 16:49   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 如何在MATLAB中计算结构中的属性数量?

我有一个返回一个或多个变量的函数,但是随着它的变化(取决于函数是否成功),以下操作不起作用:

[resultA, resultB, resultC, resultD, resultE, resultF] = func(somevars); 有时会返回错误, 未定义varargout {2} ,因为当函数失败时,只有第一个变量resultA实际上得到了一个值。相反,我将所有输出放在一个变量中:

output = func(somevars); 但是,变量被定义为结构的属性,这意味着我必须使用output.A访问它们。这本身不是问题,但是我需要计算属性的数量,以确定是否获得正确的结果。

我尝试了length(output) , numel(output)和size(output)无济于事,所以如果有人有一个聪明的办法,我将不胜感激。


回答:
length(fieldnames(output)) 也许有更好的方法,但是我想不到。



更多&回答...
poster 当前离线   回复时引用此帖