这个问题从概念上讲如何处理代码。
在MATLAB中,struct函数允许人们创建一个类似于“对象”的实体,称为struct,然后添加额外的层或尺寸
调用structname(n + 1).fieldname = new_input_field_value; 然后又增加了另一层。
问题是-也许人们可以添加一个不想要的值。
我所拥有的:对于我的结构模板
table= struct("filename", " ", "F1", 0, "F2", 0, "F3", 0);
我想不断添加文件名,以及F1-> F3的值。 文件名将从现有文件夹中调用。 F1和F3是使用DSP计算得出的,将是某种数字数据类型。
出于我的目的,我只会为F1-> F3添加整数或浮点值。
但是在手动测试中,您可以为任何字段,字符串,数字添加任何内容---一切都有效。 <-我要避免的事情
答案 0 :(得分:1)
您可以在添加操作之前检查变量的类型,而不是:
StructName.FieldName = yourVariable;
执行以下操作:
if (isnumeric(yourVariable))
StructName.FieldName = yourVariable;
end
这是您需要的吗?