Main Content

makeHeterogeneous

クラス: coder.CellType
名前空間: coder

cell 配列型の異種混合コピーの作成

構文

newt = makeHeterogeneous(t)
t = makeHeterogeneous(t)

説明

newt = makeHeterogeneous(t) は、coder.CellType オブジェクト t から異種混合 cell 配列に coder.CellType オブジェクトを作成します。t は可変サイズの cell 配列を表すことはできません。

異種混合としての分類は永続的です。後で newt から同種の coder.CellType オブジェクトを作成することはできません。

t = makeHeterogeneous(t) は、t から異種混合の coder.CellType オブジェクトを作成し、t を新しいオブジェクトで置き換えます。

すべて展開する

同じクラスとサイズの要素をもつ cell 配列型 t を作成します。

t = coder.typeof({1 2 3})
t = 

coder.CellType
   1x3 homogeneous cell 
      base: 1x1 double

cell 配列型は同種になります。

t を異種混合 cell 配列の cell 配列型で置き換えます。

t = makeHeterogeneous(t)
t = 

coder.CellType
   1×3 locked heterogeneous cell 
      f1: 1×1 double
      f2: 1×1 double
      f3: 1×1 doublee

cell 配列型は異種混合になります。要素は元の同種 cell 配列型のサイズとクラスをもちます。

ヒント

  • coder.CellType オブジェクトの表示では、用語 locked heterogeneous または locked homogeneous は、同種または異種混合としての分類が永続的であることを示しています。makeHomogeneous メソッドまたは makeHeterogeneous メソッドを使用して、分類を後で変更することはできません。

  • coder.typeof は cell 配列型が同種または異種混合のどちらであるかを判定します。cell 配列要素のクラスとサイズが同じ場合、coder.typeof は同種 cell 配列型を返します。要素のクラスが異なる場合、coder.typeof は異種混合 cell 配列型を返します。一部の cell 配列では、同種であるか異種混合であるかの分類はあいまいです。たとえば、{1 [2 3]} の型に 1 行 2 列の異種混合型を使用できます。最初の要素は double で 2 番目の要素は 1 行 2 列の double です。また、この型を 1 行 3 列の同種型にして、その要素のクラスを double で、サイズを 1 行 :2 列にすることもできます。このようなあいまいなケースでは、coder.typeof はヒューリスティックな方法を使用して型を同種または異種混合として分類します。異なる分類が必要な場合は、makeHomogeneous メソッドまたは makeHeterogeneous メソッドを使用します。

バージョン履歴

R2015b で導入