首页 > 代码库 > Tcl/Tk 中 upvar 函数简介
Tcl/Tk 中 upvar 函数简介
Upvar 函数类似于C中的传参,形如
upvar level otherVar myVar 对于myVar的操作都相当于操作otherVar
作用1 调用someproc函数时,不能直接使用varname。
proc someproc varname { upvar 1 $varname var set var 5 }someproc a
作用2 声明一个全局变量,全局变量命名空间的level是0
upvar #0 foo foo ;# equivalent to: global foo
关于level,就是函数调用的层次
proc test_2 {b} { puts [info level] } proc test_1 {a} { puts [info level] test_2 b } test_1 a
输出1 和 2 , 分别对应test_1和test_2的层级
此时如果在test_2 中调用0级变量,应该使用upvar 2 $varname var? 关于level讲解后续再做介绍。
Tcl/Tk 中 upvar 函数简介
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。