Составители:
164
Пример. Записать для пациента 3 показатель (2, 2) медицин-
ского теста
patient(3).test(2, 2) = 167;
Получить значение некоторого поля для всех записей струк-
туры нельзя; это можно сделать только для отдельной записи.
Пример. Для вывода всех значений поля name необходимо
организовать цикл:
for i = 1 : length(patient)
disp(patient(i).name)
end
John Doe
Ann Lane
Alan Johnson
Чтобы получить доступ к записи, необходимо индексировать
имя структуры.
Пример.
Результатом выполнения нижеследующего операто-
ра является структура размера 1х1, которая соответствует второй за-
писи структуры patient:
B = patient(2).
B =
name: 'Ann Lane'
billing: 28.5000
test: [3x3 double]
Функции setfield и getfield. Непосредственная индексация -
это, как правило, наиболее эффективный способ определить или при-
своить значение полю записи. Однако, если использовалась функция
fieldnames и известно имя поля, то можно воспользоваться
функция-
ми setfield и getfield.
Функция getfield позволяет определить значение поля или
элемента поля:
f = getfield(array, {array_index}, 'field', {field_index})
где аргументы array_index и field_index задают индексы для структу-
ры и поля; они не являются обязательными для структуры размера
1х1. Результат применения функции getfield соответствует элементу
следующей структуры
f = array(array_index).field(field_index);
Пример. Чтобы получить доступ к полю
name второй записи
структуры patient, необходимо использовать функцию getfield в сле-
дующей форме
str = getfield(patient, {2}, 'name')
str = Ann Lane
Пример. Записать для пациента 3 показатель (2, 2) медицин-
ского теста
patient(3).test(2, 2) = 167;
Получить значение некоторого поля для всех записей струк-
туры нельзя; это можно сделать только для отдельной записи.
Пример. Для вывода всех значений поля name необходимо
организовать цикл:
for i = 1 : length(patient)
disp(patient(i).name)
end
John Doe
Ann Lane
Alan Johnson
Чтобы получить доступ к записи, необходимо индексировать
имя структуры.
Пример. Результатом выполнения нижеследующего операто-
ра является структура размера 1х1, которая соответствует второй за-
писи структуры patient:
B = patient(2).
B=
name: 'Ann Lane'
billing: 28.5000
test: [3x3 double]
Функции setfield и getfield. Непосредственная индексация -
это, как правило, наиболее эффективный способ определить или при-
своить значение полю записи. Однако, если использовалась функция
fieldnames и известно имя поля, то можно воспользоваться функция-
ми setfield и getfield.
Функция getfield позволяет определить значение поля или
элемента поля:
f = getfield(array, {array_index}, 'field', {field_index})
где аргументы array_index и field_index задают индексы для структу-
ры и поля; они не являются обязательными для структуры размера
1х1. Результат применения функции getfield соответствует элементу
следующей структуры
f = array(array_index).field(field_index);
Пример. Чтобы получить доступ к полю name второй записи
структуры patient, необходимо использовать функцию getfield в сле-
дующей форме
str = getfield(patient, {2}, 'name')
str = Ann Lane
164
Страницы
- « первая
- ‹ предыдущая
- …
- 164
- 165
- 166
- 167
- 168
- …
- следующая ›
- последняя »
