Преобразованное в нижний индекс присвоение
a(I) = b
a(I,J) = b
a(I,:) = b
a(:,I)
= b
a(I,J,K,...) = b
a = subsasgn(a,S,b)
a(I) = b присваивает значения b в элементы a, заданного нижним векторным I. b должен иметь то же число элементов как I или быть скалярным значением.
a(I,J) = b присваивает значения b в элементы прямоугольной субматрицы a, заданного нижними векторами I и J. b должен иметь строки LENGTH(I) и столбцы LENGTH(J).
Двоеточие используется в качестве индекса, в качестве в a(I,:) = b или a(:,I)
= b указывает на целый столбец или строку.
Для многомерных массивов, a(I,J,K,...) = b присвоения b к указанным элементам a. b должен быть length(I)-by-length(J)-by-length(K)-... или быть подвижным к тому размеру путем добавления или удаления одноэлементных размерностей.
a = subsasgn(a,S,b) называется для синтаксиса a(i)=b, a{i}=b или a.i=b, когда a является объектом. S является массивом структур со следующими полями:
введите — Одно из следующего: '()', '{}' или '.', задающий нижний тип
нижние индексы — Массив ячеек или вектор символов, содержащий фактические индексы
Например, синтаксис, a(1:2,:) = b вызывает a=subsasgn(a,S,b), где S является структурой 1 на 1 с S.type='()' и S.subs = {1:2,':'}. Двоеточие, используемое в качестве индекса, передается как ':'.
Можно использовать присвоение фиксированной точки, например, a(:) = b, чтобы бросить значение с одним объектом numerictype в другой объект numerictype. Этот преобразованный в нижний индекс оператор присваивания присваивает значение b в a при хранении объекта numerictype a. Преобразованное в нижний индекс присвоение работает одинаково для целочисленных типов данных.