TCL中是否需要“命名空间导出”?

时间:2012-11-19 05:31:08

标签: namespaces tcl

'namespace export ...'是必要的,以便使用'namespace import *'命令在不同的命名空间中使用该命名空间的变量/ procs。 我们真的应该在源名称空间中执行'export'并在目标名称空间中执行'import'。

2 个答案:

答案 0 :(得分:2)

所有namespace export都会为namespace import提供make命令,并提示它们以简单模式namespace ensemble出现(尽管您还有其他选项)。如果您不想支持namespace import,则不必支持;只是永远不会出口任何东西。

使用完全限定语法在另一个命名空间中调用命令:

::the::other::namespace::command "some argument, as normal"

您还可以使用部分命名空间名称;这是一个非常常见的领先::有点难看......

答案 1 :(得分:0)

一般来说,我不想做命名空间导入/导出:我希望变量/ procs保持原样。导入可能会污染目标命名空间,这违反了命名空间的设计。