Tcl错误:命名空间“::”中已存在命令

时间:2012-11-27 15:52:33

标签: namespaces tcl incr-tcl

这个错误意味着什么?

command already exists in namespace "::"

如果出现此错误,您能提供简单的案例吗?

1 个答案:

答案 0 :(得分:3)

当您尝试执行类似于定义与现有命令同名但不是类的itcl类时,[incr Tcl]核心抛出的错误(可能);您遗漏的部分(在引号中,在“command”和“already”之间)是您尝试覆盖的命令的名称。例如(这里subst相当随意):

% package require itcl
4.0b7
% itcl::class subst {}
command "subst" already exists in namespace "::"

没有命令是Tcl本身的“标准”部分(而不是扩展包或用户代码)会生成远程关闭的错误。

至于如何修复...不要使用与现有非类相同的名称。这在你的代码的上下文中意味着什么,我不知道。您没有透露足够的信息,以便找出您可能首先遇到此问题的深层原因。