Подстрочное назначение
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)около-length(J)около-length(K)-... или быть изменяемым до этого размера путем добавления или удаления одиночных размеров.
a = subsasgn(a,S,b) вызывается для синтаксиса a(i)=b, a{i}=b, или a.i=b когда a является объектом. S является массивом структуры со следующими полями:
type - Одно из следующих: '()', '{}', или '.' указание типа подстрочного индекса
subs - массив ячеек или символьный вектор, содержащий фактические подстрочные индексы;
Например, синтаксис 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. Назначение с подстрочными индексами работает аналогичным образом для целочисленных типов данных.