Функция создания структур. Проверка имен полей и структур.
Для создания структур используется следующая функция:
- struct('field1'.VALUES1, 'field2'.VALUES2,…) – возвращает созданную данной функцией структуру, содержащую указанные в параметрах поля 'fieldn' с их значениями ' VALUESn'. Значением может быть массив ячеек;
- struct(OBJ) – конвертирует объект OBJ в эквивалентную структуру или массив структур. OBJ может быть объектом или массивом Java.
Пример:
>
>
S
=
struct(
'student'
.
'Иванов'
.
'group'
.
2
.
'estimate'
,
'good'
)
S
=
student:
'Иванов'
group:
2
estimate:
'good'
Проверка имен полей и структур
Выполнение операций с полями и элементами полей выполняется по тем же правилам, что и при работе с обычными массивами. Однако существует ряд функций, осуществляющих специфические для структур операции [Помимо функций isstruct и isfields вы можете использовать для тестирования массивов структур функцию isа(имя объекта, 'struct') и команду или функцию whos имя объекта. – Примеч. ред.].
Приведенные ниже функции служат для тестирования имен полей и структур записей:
- isfield(S, 'field') – возвращает логическую 1, если 'field' является именем поля структуры S;
- isstruct(S) – возвращает логическую 1, если S – структура, и 0 в ином случае. Их применение на примере структуры man показано ниже:
>
>
isfield(man.
'name'
)
ans
=
1
>
>
isfield(man.
'family'
)
ans
=
0
>
>
isstruct(man)
ans
=
1
>
>
isstruct(many)
??? Undefined
function
or variable
'many'
.
>
>
isstruct(
'many'
)
ans
=
0