だから...私はmatlab関数ハンドルとその目的を理解することができます。しかし、時々、それがあまりにも不可解になるとき、私はそれをさらに詳しく説明するのに助けを必要とします。この例をデフォルトのMATLABドキュメントから取得します。たとえば、次のようになります。
f = @(x)x.^3-2*x-5;
次のように書き直すこともできます。
function f(arg)
arg.^3 - 2*arg - 5;
end
ここから前述したように、誰かが以下のコードを解読するのを手伝ってもらえますか?デフォルトのmatlab関数でヘルプは必要ありません。ここでユーザー定義の無名関数を理解するのに少し役立ちます。
applyToGivenRow = @(func, matrix) @(row) func(matrix(row, :))
applyToRows = @(func, matrix) arrayfun(applyToGivenRow(func, matrix), 1:size(matrix,1))'
% Example
myMx = [1 2 3; 4 5 6; 7 8 9];
myFunc = @sum;
applyToRows(myFunc, myMx)