Класс: coder.CellType
Пакет: кодер
Создайте гомогенную копию типа массива ячеек
newt = makeHomogeneous(t)
t = makeHomogeneous(t)
создает newt
= makeHomogeneous(t
)coder.CellType
объект для гомогенного массива ячеек newt
от coder.CellType
объект t
.
Создать newt
, makeHomogeneous
метод должен определить размер и класс, которые представляют все элементы t
:
Если элементы t
имейте тот же класс, но различные размеры, элементы newt
переменный размер с верхними границами, которые вмещают элементы t
.
Если элементы t
имейте различные классы, например, char
и double
, makeHomogeneous
метод не может создать coder.CellType
объект для гомогенного массива ячеек.
Если вы используете coder.cstructname
задавать имя для типа структуры, который представляет t
в сгенерированном коде вы не можете создать гомогенный coder.CellType
объект от t
.
Классификация как гомогенная является постоянной. Вы не можете позже создать неоднородный coder.CellType
объект от newt
.
создает гомогенный t
= makeHomogeneous(t
)coder.CellType
объект от t
и замены t
с новым объектом.
В отображении coder.CellType
объект, термины locked heterogeneous
или locked homogeneous
укажите, что классификация как гомогенная или неоднородная является постоянной. Вы не можете позже изменить классификацию при помощи makeHomogeneous
или makeHeterogeneous
методы.
coder.typeof
определяет, является ли тип массива ячеек гомогенным или неоднородным. Если элементы массива ячеек имеют тот же класс и размер, coder.typeof
возвращает гомогенный тип массива ячеек. Если элементы имеют различные классы, coder.typeof
возвращает неоднородный тип массива ячеек. Для некоторых массивов ячеек классификация как гомогенная или неоднородная неоднозначна. Например, тип для {1 [2 3]} может быть 1x2 неоднородный тип. Первый элемент является двойным, и второй элемент 1x2 дважды. Тип может также быть 1x3 гомогенный тип, в котором элементы имеют класс дважды и размер 1x:2. Для этих неоднозначных случаев, coder.typeof
эвристика использования, чтобы классифицировать тип как гомогенный или неоднородный. Если вы хотите различную классификацию, используйте makeHomogeneous
или makeHeterogeneous
методы.