0

私はこれを理解しようとして、いくつかのフォーラムの投稿を読んでいますが、それを解読することはできません. 関数を要約すると、2 つの配列searchDatessearchIds. 今私がやりたいのは、要素の1つのサイズを他の配列と比較することだけです。これはこれまでのコードですが、持ち越す方法がわかりませsearchDatessearchIds

function a = compare(userNum)
if size(searchDates{1,userNum},2) == size(searchIds{1,userNum},2)
    x = true
else x = false
end

TL;DR 上記の 2 つの配列を BASE WORKSPACE から FUNCTION WORKSPACE に渡す方法を知る必要があります。

乾杯!

4

1 に答える 1

1

配列を直接渡すことができるように、関数を書き直すことができます。

function a = compare(userNum,searchDates,searchIds)
if size(searchDates{1,userNum},2) == size(searchIds{1,userNum},2)
    x = true
else x = false
end

次に、2 番目と 3 番目の引数でワークスペース変数との比較を呼び出します。何らかの理由で引数を 1 つだけ持つために比較する必要がある場合は、上記の関数比較を使用して次のように記述して、ワークスペースに無名関数を作成できます。

anon_compare = @(userNum) compare(userNum,searchDates,searchIds)

searchDAtes と searchIds がワークスペースにある場合、関数 anon_compare ができ、これを として直接使用できますanon_compare(foo)

無名関数 (いくつかの MATLAB プログラミング手法の重要な側面) の詳細については、この投稿を参照してください。

于 2012-04-17T22:55:13.610 に答える