MATLAB图形用户界面编程全解析
1. 变量作用域与访问
在编程中,变量的作用域是一个关键概念。函数有自己独立的工作空间,这意味着变量 a 若不在函数参数列表中传递给函数,它对于该函数就是不可用的。同样,函数内部的变量 x 和 y ,如果不通过返回值传递出来,在函数外部也是不可用的。变量 a 通常在“基础”工作空间中定义,而 x 和 y 则在函数的工作空间里定义。所以,变量的作用域取决于它的定义位置。
在实际编程中,我们常常希望在回调函数里访问主程序中设置的变量。回调函数虽然可以接收参数,但它不支持返回多个值。也就是说,若将数据作为参数传递给回调函数,我们可以读取这些数据,但要修改数据就需要一些技巧。这里有几种方法可以实现变量的访问和修改:
- 全局声明 :使用 global 声明变量,能让所有函数和脚本都可以访问或修改该变量,但使用的地方都要声明这是全局变量。
- evalin 和 assignin 命令 : evalin 可从基础工作空间访问变量的值, assignin 则能给基础工作空间的变量赋予新值。
- 子函数作为回调 :子函数可以作为回调函数使用,但要使用句柄而不是字符串,例如用 @myCallback 代替 'myCallback'
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



