命名空间变量
variable
命令确保创建给定的命名空间变量。在为其分配值之前,变量的值是未定义的:
namespace eval mynamespace {
variable alpha
set alpha 0
}
通过将命名空间的名称附加到命名空间,可以从命名空间外部(实际上从任何地方)访问该变量:
set ::mynamespace::alpha
通过再次使用 variable
命令可以在过程中简化访问:
proc ::mynamespace::myproc {} {
variable alpha
set alpha
}
这将为 namespace 变量创建一个本地别名。
对于在另一个名称空间中定义的过程,变量名称必须包含 variable
调用中的名称空间:
proc myproc {} {
variable ::mynamespace::alpha
set alpha
}