Преобразованная в нижний индекс ссылка
Для классов, созданных в R2021b и позже, рекомендуемый процесс для настройки индексации должен наследоваться некоторой комбинации matlab.mixin.indexing.RedefinesParen, matlab.mixin.indexing.RedefinesDot, и matlab.mixin.indexing.RedefinesBrace. Для получения дополнительной информации смотрите, Настраивают Индексирование объектов.
В этом примере показано, как MATLAB® вызывает subsref для следующего выражения индексации.
A = magic(5); A(1:2,:)
ans = 2×5
17 24 1 8 15
23 5 7 14 16
Синтаксис, A(1:2,:), результаты в вызове B = subsref(A,S) где S структура 1 на 1 где S.type is '()' и S.subs is {1:2,':'}. Символ двоеточия указывает на двоеточие, используемое в качестве индекса.
В этом примере показано, как MATLAB® вызывает subsref для индексации выражения то использование фигурные скобки.
C = {"one", 2, 'three'};
C{1:2}ans = "one"
ans = 2
Синтаксис, C {1:2}, приводит к вызову [c1,c2] = subsref(C,S) где S.type '{}' и S.subs {[1 2]}.
В этом примере показано, как MATLAB® вызывает subsref для индексации выражения та запись через точку использования.
A = struct('number',10);
A.numberans = 10
Синтаксис A.number результаты в вызове B = subsref(A,S) где S.Type '.' и S.subs 'number'.
A — Индексируемый объектный массивИндексируемый объектный массив, переданный MATLAB как объектный массив, который является частью выражения индексации.
S — Индексация структурыИндексация структуры, переданной MATLAB как индексация substruct для выражения индексации, которое вызвало вызов subsref. Эта структура имеет эти поля:
type – Вектор символов или строковый скаляр, содержащий (), {}, или ., определение типа индекса.
subs – Массив ячеек, вектор символов или строковый скаляр, содержащий фактические индексы.
Выражения индекса могут использовать больше чем один уровень, чтобы сформировать более сложные выражения. Например, A{1}.field(3:5) имеет три уровня индексации. Для этого выражения, S массив структур 3 на 1 с этими полями:
disp(S(1))
type: '{}'
subs: {[1]}
disp(S(2))
type: '.'
subs: 'field'
disp(S(3))
type: '()'
subs: {[3 4 5]}Типы данных: struct
B — Результат индексации выраженияРезультат индексации выражения.
A(I) массив, сформированный из элементов A заданный вектором индекса I. Полученный массив одного размера с I за исключением особого случая, где A и I оба векторы. В этом случае, A(I) имеет то же число элементов как I но имеет ориентацию A.
A(I,J) массив, сформированный из элементов прямоугольной субматрицы A, заданный векторами индекса I и J. Полученный массив имеет length(I) строки и length(J) столбцы. Двоеточие, используемое в качестве индекса, указывает на все элементы в этом измерении. Например, A(I,:) средние значения все столбцы тех строк заданы векторным I. Точно так же A(:,J) средние значения все строки столбцов заданы J.
A(I,J,K,...) массив, заданный индексами. Результатом является length(I)- length(J)- length(K)....
A{I} где A массив ячеек и I скалярные формы копия массива в заданной ячейке A. Если I имеет больше чем один элемент, это выражение является списком, разделенным запятыми. Можно также использовать несколько индексов, которые указывают скалярный элемент, как в A{3,4}.
A(I).field когда A массив структур и I скалярные формы копия массива в поле с именем field. Если I имеет больше чем один элемент, это выражение является списком, разделенным запятыми. Если A массив структур 1 на 1, затем индекс может быть пропущен. В этом случае, A.field совпадает с A(1).field.
Длинные массивы поддерживают ограниченное подмножество индексации операций. Для получения дополнительной информации смотрите индекс и Просмотр элементов длинного массива.
backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool.Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
Указания и ограничения по применению:
Изогнутая индексация фигурной скобки для массивов ячеек и индексация точки для структур не поддерживаются (массивы графического процессора не поддерживают массивы ячеек или структуры).
Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox).
Указания и ограничения по применению:
При использовании codistributor2dbc схемы индексы должны быть скалярными положительными целыми числами или ':'.
Изогнутая индексация фигурной скобки для массивов ячеек и индексация точки для структур не поддерживаются.
Для получения дополнительной информации смотрите функции MATLAB Запуска с Распределенными Массивами (Parallel Computing Toolbox).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.