如何在Matlab中通过引用传递参数?

3
这是我的第一个问题,我是一名初学者,关于问题的格式任何帮助都会很好。
我正在使用Matlab编程,想知道是否可以向数组中添加对象,然后当数组中的对象被修改时,在原始对象中获取该修改。我认为在其他语言中可能是可能实现的,但在Matlab中我找不到方法。
代码的简单版本将如下所示:
Obj 是具有多个属性的对象。
referenceObj 是 Obj 的一个实例,其中有一半的属性设置。
obj1... obj5 是未初始化的 Obj 实例。
obj1=referenceObj;
obj2=referenceObj;
obj3=referenceObj;
obj4=referenceObj;
obj5=referenceObj;

arrayOfObj=[obj1 obj2 obj3 obj4 obj5];


for i=1:numel(arrayOfObj)

arrayOfObj(i).someProperty=function;

end

代码结束后,数组中的对象具有该属性的值,但原始对象没有。我应该怎么办?

非常感谢,对于我的糟糕的英语表示抱歉 =)

1个回答

2

引用对象的类必须像这样继承自handle:

classdef SampleClass < handle    
end

该类的对象将是引用类型。因此,如果您将对象放入数组并在那里进行修改,则实际对象将被修改。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接