makeHomogeneous
クラス: coder.CellType
パッケージ: coder
cell 配列型の同種コピーの作成
構文
newt = makeHomogeneous(t)
t = makeHomogeneous(t)
説明
は、newt
= makeHomogeneous(t
)coder.CellType
オブジェクト t
から同種 cell 配列 newt
に coder.CellType
オブジェクトを作成します。
newt
を作成するには、makeHomogeneous
メソッドで t
のすべての要素を表すサイズとクラスを判別しなければなりません。
t
の要素のクラスが同じでサイズが異なる場合、newt
の要素は可変サイズになり、t
の要素に対応した上限になります。t
の要素にchar
とdouble
などの異なるクラスがある場合、makeHomogeneous
メソッドは同種 cell 配列にcoder.CellType
オブジェクトを作成できません。
coder.cstructname
を使用して生成されたコード内で t
を表す構造体型の名前を指定する場合、t
からは同種の coder.CellType
オブジェクトを作成できません。
同種としての分類は永続的です。後で newt
から異種混合の coder.CellType
オブジェクトを作成することはできません。
は、t
= makeHomogeneous(t
)t
から同種の coder.CellType
オブジェクトを作成し、t
を新しいオブジェクトで置き換えます。
例
ヒント
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 で導入