Составители:
173
• Матричная организация позволяет упростить обработку по-
лей данных.
Пример. Нахождение среднего всех значений поля
amount реализуется следующим образом:
в случае матричной организации:
avg = mean(A.amount);
в случае поэлементной организации:
avg = mean([B.amount]);
• Поэлементная организация позволяет упростить доступ к по-
лям, связанным с отдельной записью.
Пример. Рассмотрим М-файл client.m,
который выводит на
экран имя и адрес клиента.
- в случае матричной организации надо отображать индивиду-
альные поля:
function client(name, address)
disp(name)
disp(address)
- в случае поэлементной организации можно отобразить целую
запись:
function client(B)
disp(B)
Вызов функции client должен быть организован следующим образом:
- в случае матричной организации:
client(A.name(2,:),A.address(2,:))
- в случае поэлементной организации:
client(B(2))
Поэлементная организация
упрощает работу со строками пе-
ременной длины. В случае матричной организации, если априори не-
известна максимальная длина строки, придется многократно опреде-
лять размеры полей name или address, чтобы разместить более длин-
ные строки.
Обычно сами данные не диктуют выбор схемы организации;
ее определяют операции доступа и обработки данных.
Вложенные структуры
Поле
структуры может само включать другую структуру или
даже массив структур. Как только структура создана, с помощью опе-
раторов присваивания или функции struct можно вложить структуры
в существующие поля.
• Матричная организация позволяет упростить обработку по-
лей данных.
Пример. Нахождение среднего всех значений поля
amount реализуется следующим образом:
в случае матричной организации:
avg = mean(A.amount);
в случае поэлементной организации:
avg = mean([B.amount]);
• Поэлементная организация позволяет упростить доступ к по-
лям, связанным с отдельной записью.
Пример. Рассмотрим М-файл client.m, который выводит на
экран имя и адрес клиента.
- в случае матричной организации надо отображать индивиду-
альные поля:
function client(name, address)
disp(name)
disp(address)
- в случае поэлементной организации можно отобразить целую
запись:
function client(B)
disp(B)
Вызов функции client должен быть организован следующим образом:
- в случае матричной организации:
client(A.name(2,:),A.address(2,:))
- в случае поэлементной организации:
client(B(2))
Поэлементная организация упрощает работу со строками пе-
ременной длины. В случае матричной организации, если априори не-
известна максимальная длина строки, придется многократно опреде-
лять размеры полей name или address, чтобы разместить более длин-
ные строки.
Обычно сами данные не диктуют выбор схемы организации;
ее определяют операции доступа и обработки данных.
Вложенные структуры
Поле структуры может само включать другую структуру или
даже массив структур. Как только структура создана, с помощью опе-
раторов присваивания или функции struct можно вложить структуры
в существующие поля.
173
Страницы
- « первая
- ‹ предыдущая
- …
- 173
- 174
- 175
- 176
- 177
- …
- следующая ›
- последняя »
