在Matlab中实现对象容器的最佳方法

时间:2013-06-26 11:08:35

标签: list matlab oop iterator

我正在使用面向对象的Matlab,我想知道,制作一个对象列表的最佳方法是什么,同一个类的所有实例?我希望能够在for循环中迭代列表并为我的每个类实例访问相同的函数。

1 个答案:

答案 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的对象数组。