foo次のように定義された関数があるとしましょう
[a b] = foo(c ).
関数ハンドルを考えれば
f = @(c)foo(c)
たとえばcellfun通話で使用する場合、私が取得するのは、次のように定義されfたものと同等の動作です。foo
a = foo(c)
つまり、戻り値bは失われます。
したがって、そのようなfがcellfun呼び出されると、出力セルにはasだけが含まれ、bs(現在気になっている)が失われます。視覚的に
cellfun(f,input)
[a(input{1})] ?
[a(input{2})] ?
.... b gets killed along the way
質問: sだけfooをキャッチする関数ハンドルを定義するにはどうすればよいbですか?fooつまり、のような定義に類似した動作を与える
b = foo(c)
ie ^ 2、s を無駄aにします。
さらに、(効率的に)両方aとユニークな呼び出しbをキャッチすることは可能ですか? cellfun