Класс: кодер. CellType
Пакет: кодер
Создайте гомогенную копию типа массива ячеек
тритон = 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 указывают, что классификация как гомогенная или неоднородная является постоянной. Вы не можете позже изменить классификацию при помощи методов makeHeterogeneous или makeHomogeneous.
coder.typeof определяет, является ли тип массива ячеек гомогенным или неоднородным. Если элементы массива ячеек имеют тот же класс и размер, coder.typeof возвращает гомогенный тип массива ячеек. Если элементы имеют различные классы, coder.typeof возвращает неоднородный тип массива ячеек. Для некоторых массивов ячеек классификация как гомогенная или неоднородная неоднозначна. Например, тип для {1 [2 3]} может быть 1x2 неоднородный тип. Первый элемент является двойным, и второй элемент 1x2 дважды. Тип может также быть 1x3 гомогенный тип, в котором элементы имеют класс дважды и размер 1x:2. Для этих неоднозначных случаев coder.typeof использует эвристику, чтобы классифицировать тип как гомогенный или неоднородный. Если вы хотите различную классификацию, используйте методы makeHeterogeneous или makeHomogeneous.