不要使用全局变量。
你可以避免整个问题,不使用全局变量。仅仅因为一些初学者喜欢使用全局变量不使他们的好方法代码:它使调试非常困难,产生错误,非常不透明。避免全局变量,仅仅通过使用的任何数据
首选
和
推荐的
方法给出了MATLAB文档:传递参数,嵌套函数,等等。
在你的第一个函数全球并不存在
在你宣布它是全球性的
,然后用MATLAB创建一个空矩阵(默认的类双)。显然没有空矩阵元素1到6,和不是一个结构,所以你试图迫使结构是一个错误。所以,你基本上是这样做:
> > = [];
> >(1:6)=结构(“x”,1)
? ? ?的错误发生后将从结构到双:
错误使用= = >翻倍
转换从结构是不可能翻倍。
解决方案?避免使用全局变量。通过您的数据正确。