我在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