Arrays 当已经设置了double数组时,如何初始化对象数组?

Arrays 当已经设置了double数组时,如何初始化对象数组?,arrays,matlab,Arrays,Matlab,我想初始化粒子数组,其中粒子是我定义的类。有人告诉我应该这样做 粒子(2,1)=粒子() 但是,如果先前已将粒子设置为类似于双倍数组的值,或者可能大于预期大小(并且不会随着这条线收缩,我认为只有受影响的行会被更改),则此操作不起作用。有没有办法取消设置变量以初始化我的数组 我得到的错误是: 从粒子转换为双粒子时发生以下错误: 无法从“粒子”转换为“双精度” 主(第4行)粒子中的错误(2,1)=粒子() 有各种可能的解决办法。要清除变量,请使用清除: clear particles particl

我想初始化粒子数组,其中粒子是我定义的类。有人告诉我应该这样做

粒子(2,1)=粒子()

但是,如果先前已将
粒子
设置为类似于双倍数组的值,或者可能大于预期大小(并且不会随着这条线收缩,我认为只有受影响的行会被更改),则此操作不起作用。有没有办法取消设置变量以初始化我的数组

我得到的错误是:

从粒子转换为双粒子时发生以下错误: 无法从“粒子”转换为“双精度”

主(第4行)粒子中的错误(2,1)=粒子()


有各种可能的解决办法。要清除变量,请使用
清除

clear particles
particles(2, 1) = Particle;
(注意,调用不带参数的函数时,无需添加空括号。)

但是,更好的解决方案是创建类的数组并将其分配给变量

particles = repmat(Particle,2,1);
只有在没有重载连接运算符的情况下,此语句才有效