结构阵列不需要完全连续的内存。但是,每个字段都需要连续内存,因此Matlab的标题®创建描述数组。对于非常大的数组,递增地增加字段的字段数或现场中的元素数量出去
的
记忆
错误。
通过分配初始值来预先释放内容的内容塑造
功能,如
newstruct(1:25,1:50)= struct('一种',(20),'B',零(30),'C',兰特(40));
此代码创建并填充25×50结构阵列S.
与字段一种
那B.
, 和C
。
如果您不愿意分配初始值,可以通过将空数组分配给结构阵列中最后一个元素的每个字段来初始化结构数组,例如
ewnstruct(25,50).a = [];Newstruct(25,50).b = [];Newstruct(25,50).c = [];
或者,等效,
Newstruct(25,50)= struct('一种',[],'B',[],'C',[]);
但是,在这种情况下,MATLAB仅为标题分配内存,而不是用于数组的内容。
有关更多信息,请参阅: