可変数の入力変数を受け入れる関数があります。問題は、提供する入力引数の数がさまざまであることです。そのため、すべての引数を構造体に格納します。
function grandAvg(datafiles)
% Load up all averaged datafiles
avgs = struct();
for n=1:length(datafiles)
avgs(n).avg = load(datafiles{n});
end
私の質問は、関数のこの引数を拡張する方法はありますか? これを変換する方法が必要です:
% DOES NOT WORK
avg = ft_timelockgrandaverage(cfg, avgs);
これに:
% WOULD WORK, BUT DO NOT WANT TO TYPE IT OUT
avg = ft_timelockgrandaverage(cfg, avgs(1).avg, ..., avgs(n).avg);
編集して追加:どうやら私の質問は明確ではありませんでした。を使用して関数を構築する方法を知っていますvarargin
。私の質問は、変更したくない、または変更できない組み込み関数を使用しようとしている場合、どのように変数の方法で引数を提供できますか? つまり、提供する引数の数が前もってわからないので、関数を呼び出すときは、X 個の引数で呼び出す必要があります。事実上、私はこれを変える方法を探しています:
someVar <1xN struct>
これに:
someVar1 <1x1 struct>
someVar2 <1x1 struct>
...
someVarN <1x1 struct>
プログラム的に。ありがとう!