我在Matlab中创建了一个异类对象数组,该类来源于matlab.mixin.Heterogeneous
类。我的数组现在包含超类Cells
的对象和Neuron
,Astrocyte
等子类。 我想分配给我的子类的方法应该根据不同的激励来模拟它们的行为。为了计算行为,我需要对象来执行数学运算。但是,当我定义使用运营商在类的方法的功能,Matlab的告诉我,例如为:异构数组中的数学运算(Matlab)
未定义操作“ - ”类型的输入参数的“细胞”。
然后我试图构建我有多个继承(Cells < matlab.mixin.Heterogeneous & double
)超类,但随后会出现这样的错误:
使用错误细胞: 类“细胞”不能是 matlab.mixin的子类。异构并且继承 类'double'的'subsasgn'方法。
这并不奇怪,因为它在 'matlab.mixin.Heterogeneous'
不能覆盖在你的子类下面的方法描述说:
...
subsasgn
因为我唯一的想法是定义方法s作为类之外的函数,我想问一下是否有可能在异构对象数组中执行数学运算。
您需要为您的类定义运算符。 'minus'将定义'-' – Suever