Создайте аргумент структуры для subsasgn
или subsref
S = подstruct (type1, subs1, type2, subs2...)
S = substruct(type1, subs1, type2, subs2, ...)
создает структуру с полями, требуемыми перегруженным subsref
или методом subsasgn
. Каждый вектор char
type
должен быть одним из '.'
, '()'
или '{}'
. Соответствующий аргумент subs
должен быть любой именем поля (для типа '.'
) или массив ячеек, содержащий индексные векторы (для '()'
или типов '{}'
).
|
|
Вызовите subsref
с аргументами, эквивалентными синтаксису:
B = A(3,5).field;
где A
является объектом класса, который реализует метод subsref
Используйте substruct
, чтобы сформировать входной параметр struct
, S
:
S = substruct('()',{3,5},'.','field');
Вызовите метод класса:
B = subsref(A,S);
struct
, созданный substruct
в этом примере, содержит:
disp(S(1)) type: '()' subs: {[3] [5]} disp(S(2)) type: '.' subs: 'field'