如何使Matlab工作区中的每个变量都可以被每个函数访问?

时间:2014-12-16 11:24:42

标签: matlab function user-interface callback

当我从命令窗口运行Matlab脚本时,它正在正常运行。这个脚本使用函数,因此我必须使变量成为全局变量。

现在,当我从GUI中的切换按钮的回调函数运行此脚本时,我收到错误。错误似乎来自可访问的变量。

我错过了什么吗?这是什么问题的解决方案?

1 个答案:

答案 0 :(得分:3)

当从回调函数运行脚本时,脚本可以访问"调用者"函数,即回调函数工作空间,而不是基础工作空间。您需要确保每个函数都可以访问它所需的变量,方法是将它们设置为全局变量,或者优先将它们作为参数传递给函数。这样,代码更加便携,并且不依赖于基本工作空间中可能存在或不存在的变量。在GUI中,您可以使用handles结构来存储执行回调函数所需的数据。