假设我在 Itcl 中实现了以下代码。
package require Itcl
itcl::class A {
constructor {} { puts $this }
destructor {}
public method Print {} { puts "ok" }
}
itcl::class B {
constructor {} { }
destructor {}
public method returnA {} { return [A #auto] }
}
B b ;# create an instance of class B
set obj [b returnA] ; #assign return value to obj
$obj Print ;# should treat obj as an A type and print ok
现在,我收到以下错误:
执行“$obj Print”时命令名称“0”无效
我知道我需要向我的变量或 Print 命令添加范围,以便调用与 A 类关联的 Print 方法。但我真的不知道如何。
我还阅读了以下帖子:
但它并没有说明如何将返回值视为特定的类类型变量