deal
入力を出力へ分配
説明
メモ
ほとんどの場合、関数 deal
は必要ありません。cell 配列および構造体フィールドの内容にアクセスする場合は、次の構文に示すように、代わりに配列インデックス付けとコンマ区切りリストを使用します。
[A1,...,An] = C{:} [B1,...,Bn] = S(:).field
詳細については、コンマ区切りリストを参照してください。
ただし、通常は単一の出力を返す演算から複数の出力が必要な場合は、deal
が役立つ場合がいくつかあります。たとえば、deal
を使用して、次を実行できます。
cell 配列の複数の cell に値を代入する。
非スカラー構造体配列のフィールドに値を代入する。
無名関数から複数の出力を返す。
[
は入力引数 B1,...,Bn
] = deal(A1,...,An
)A1,...,An
をコピーし、それらを出力引数 B1,...,Bn
として返します。これは、B1 = A1
, …, Bn = An
と同じです。この構文では、入力引数と出力引数の数は同じでなければなりません。
[
は単一の入力引数 B1,...,Bn
] = deal(A)A
をコピーし、出力引数 B1,...,Bn
として返します。これは、B1 = A
, …, Bn = A
と同じです。この構文では、任意の数の出力引数を指定できます。
例
入力引数
出力引数
ヒント
cell 配列を構造体配列に変換するか、構造体配列を cell 配列に変換するには、
deal
ではなく、関数cell2struct
とstruct2cell
を使用します。
拡張機能
バージョン履歴
R2006a より前に導入