我正在使用面向对象的Matlab,我想知道,制作一个对象列表的最佳方法是什么,同一个类的所有实例?我希望能够在for循环中迭代列表并为我的每个类实例访问相同的函数。
答案 0 :(得分:5)
重申评论中提到的Shai,MATLAB supports创建一个对象数组,假设它们都是同一个类(并且cat / horzcat / vertcat方法没有明确覆盖,否则)。例如:
obj = MyClass();
arr = [obj,obj]; %# 1x2 array of objects
for ii=1:numel(arr)
arr(ii)
end
甚至可以通过实现转换器方法或让所有类继承自different types超类来创建matlab.mixin.Heterogeneous的对象数组。