13

我想将一些变量包装在一个结构中,以便在函数发送很多时更容易输入和输出。问题是其中一个变量是一个元胞数组——特别是包含字符串。显然,一旦给定的变量之一

struct(var1,var2,...) 

是一个元胞数组,然后它使结构成为结构的元胞数组,而不是让元胞数组成为结构的内部变量——这不是我想要的结果,并且需要大量代码。

这个问题有什么解决方案/解决方法吗?

4

1 回答 1

29

可以直接设置字段:

 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'}
于 2011-05-08T11:46:24.377 回答