Массив ячеек внутри структуры в Matlab-возможно?
Я хотел обернуть несколько переменных внутри одной структуры, для облегчения ввода и вывода из функций, поскольку они отправляются довольно много. Проблема в том, что одна из переменных-это массив ячеек, содержащий строки. Очевидно, когда-то одна из переменных, заданных
struct(var1,var2,...)
является массивом ячеек, затем он делает структуру массивом ячеек структур, вместо того, чтобы иметь массив ячеек внутренней переменной структуры - что не является моим желаемым результатом и будет требуется uglyfing много кода.
есть ли какое-либо решение/обходной путь к этой проблеме?
1 ответов
вы можете установить поле напрямую:
X = struct('a', 'one', 'b', 'honk');
X.c = {'x', 'y'};
или, если вы хотите сделать все внутри struct (), вы можете поместить массив ячеек в массив ячеек:
X = struct('a', 'one', 'b', 'honk', 'c', {{'foo', 'bar'}});
X =
a: 'one'
b: 'honk'
c: {'foo' 'bar'}