我最近花了一些时间创建复杂的Matlab GUI工具。我正在使用GUIDE GUI构建器。
我不喜欢Matlab管理代码背后的全局变量(带有函数的.m文件)的方式。如果我想在函数调用之间共享数据,我必须将它们存储在handles
结构中,该结构作为每个函数调用的参数给出。我认为它容易出错,因为我必须时刻记住存储和更新handles
。以这种方式处理全局变量对我来说是不自然的。使用 appdata 更糟糕。
是否可以使用class作为GUI的代码?所有的回调都是方法,所以他们会收到obj
作为参数,我可以在类属性中存储全局变量。在我看来,这要清楚得多。
这只是一个想法,它可能根本不可能......但如果有更好的实践如何在Matlab GUI中处理全局变量,那么请建议。