Индексные подструктуры и поля
Используйте следующие инструкции при индексировании подструктур и полей для создания кода:
Ссылочные значения полей подструктуры по отдельности с помощью точечного обозначения
Например, следующий код MATLAB ® использует точечную нотацию для индексирования полей и подструктур:
Созданный код индексирует элементы структур в этом примере, разрешая символы следующим образом:
| Точечная нотация | Разрешение символов |
|---|
substruct1.a1 | Область a1 локальной структуры substruct1 |
substruct2.ele3.a1 | Значение поля a1 поля ele3, подструктура локальной структуры substruct2 |
substruct2.ele3.a2(1,1) | Значение в строке 1, столбце 1 поля a2 поля ele3, подструктура локальной структуры substruct2 |
Ссылочные значения полей по отдельности в массивах структуры
Чтобы сослаться на значение поля в массиве структуры, необходимо проиндексировать в массив интересующую структуру, а затем сослаться на поле этой структуры по отдельности с помощью точечной нотации, как в этом примере:
Чтобы ссылаться на все значения определенного поля для каждой структуры в массиве, используйте эту нотацию в for цикл, как в этом примере:
В этом примере используется repmat функция для определения массива структур, каждая с двумя полями a и b как определено s. Дополнительные сведения см. в разделе Определение массивов структур для создания кода.
Динамически не ссылаться на поля
Нельзя ссылаться на поля в структуре, используя динамические имена, которые выражают поле как выражение переменной, которое MATLAB вычисляет во время выполнения (см. раздел Создание имен полей из переменных).