這裏的多數民衆贊成給我的麻煩一行代碼。Arrayfun語法和用法與類方法
arrayfun(@(x)container.nodelist(x).config(@a_func_handle,0),2:6);
Container是一個類,它的一個屬性是節點的對象數組,該數組稱爲nodelist。
每個節點都有一個函數調用配置,其用於初始化它。 Config需要一個輸入,其中一個是函數的句柄。我正在傳遞的函數句柄需要一個與它一起傳遞的常量,它由0表示。
在這種情況下,我想在具有特定功能的nodelist中的位置2到6處配置節點,所以我認爲使用arrayfun而不是for循環。
不幸的是,MATLAB barfs以「太多的投入」的功能配置。我在寫什麼錯?這個例子清楚嗎?
僅僅通過arrayfun的doc去,它看起來像第二個參數arrayfun應該是要在其上應用的功能結構/矢量@config,而不是索引。當然,這並不能解釋你得到的「太多輸入」錯誤。但也許嘗試傳遞nodelist(2:6)作爲第二個參數而不是2:6?您的意見 – kitchenette
謝謝,我沒有注意到的那部分。 – krapht