Структурный массив
Структурный массив - это тип данных, который группирует связанные данные с использованием контейнеров данных, называемых полями. Каждое поле может содержать данные любого типа. Доступ к данным в поле с помощью точечной нотации формы structName.fieldName.
При наличии данных для ввода в новую структуру создайте структуру с помощью точечной нотации для именования ее полей по одному:
s.a = 1;
s.b = {'A','B','C'}s = struct with fields:
a: 1
b: {'A' 'B' 'C'}
Можно также создать структурный массив с помощью struct функция, описанная ниже. Можно одновременно указать несколько полей или создать нескалярный структурный массив.
s = struct создает скалярную структуру (1 на 1) без полей.
s = struct( создает массив структуры с указанными полем и значением. field,value)value входной аргумент может быть любым типом данных, например числовым, логическим, символьным или массивом ячеек.
Если value не является массивом ячеек, или если value является массивом скалярных ячеек, то s - скалярная структура. Например, s = struct('a',[1 2 3]) создает структуру 1 на 1, где s.a = [1 2 3].
Если value является нескалярным массивом ячеек, то s является массивом структуры с теми же размерами, что и value. Каждый элемент s содержит соответствующий элемент value. Например, s = struct('x',{'a','b'}) прибыль s(1).x = 'a' и s(2).x = 'b'.
Если value является пустым массивом ячеек {}, то s является пустой структурой (0 на 0).
s = struct(field1,value1,...,fieldN,valueN) создает структурный массив с несколькими полями.
Если ни один из value входами являются массивы ячеек, или если все value входы, которые являются массивами ячеек, являются скалярами, то s - скалярная структура.
Если какой-либо из value входы - массив нескалярных ячеек, затем s имеет те же размеры, что и этот массив ячеек. Кроме того, если два или более value входные данные являются нескалярными массивами ячеек, тогда все они должны иметь одинаковые размеры.
Для любого value это массив скалярных ячеек или массив любого другого типа данных, struct вставляет содержимое value в соответствующей области для всех элементов s. Например, s = struct('x',{'a','b'},'y','c') прибыль s(1).x = 'a', s(2).x = 'b', s(1).y = 'c', и s(2).y = 'c'.
При наличии value входной - пустой массив ячеек, {}, затем вывод s является пустой структурой (0 на 0). Чтобы указать пустое поле и сохранить значения других полей, используйте [] в качестве value вместо этого введите.
s = struct([]) создает пустую структуру (0 по 0) без полей.
s = struct( создает скалярную структуру с именами полей и значениями, соответствующими свойствам obj)obj. struct функция не преобразует obj, но скорее создает s как новая структура. Эта структура не сохраняет информацию о классе, поэтому частные, защищенные и скрытые свойства становятся открытыми полями в s. struct при использовании этого синтаксиса функция выдает предупреждение.
cell2struct | fieldnames | isfield | isstruct | orderfields | rmfield | struct2cell | struct2table | substruct | table | table2struct