Main Content

substruct

関数 subsasgn または関数 subsref のための構造体引数の作成

構文

S = substruct(type1, subs1, type2, subs2, ...)

説明

S = substruct(type1, subs1, type2, subs2, ...) は、オーバーロードされた subsrefsubsasgn メソッドに要求されたフィールドをもつ構造体を作成します。個々の typechar ベクトルは、'.''()' または '{}' のいずれかでなければなりません。それに対応する引数 subs は、フィールド名 ('.' タイプに対して)、またはインデックス ベクトルを含む cell 配列 ( '()' または '{}' タイプに対して) のいずれかでなければなりません。

出力引数

S

以下のフィールドのある struct

  • type: '.''()''{}' のいずれか

  • subs: 添字の値 (フィールド名またはインデックス ベクトルの cell 配列)

以下の構文と等価な引数を使用した関数 subsref を呼び出します。

B = A(3,5).field;

ここで、A は、subsref メソッドを実行するクラスのオブジェクトです。

substruct を使用して、入力 struct, S を形成します。

S = substruct('()',{3,5},'.','field');

以下のクラス メソッドを呼び出します。

B = subsref(A,S);

この例の substruct によって作成された struct には、以下が含まれています。

disp(S(1))
    type: '()'
    subs: {[3]  [5]}

disp(S(2))
    type: '.'
    subs: 'field'

拡張機能

バージョン履歴

R2006a より前に導入