当前位置: 代码迷 >> 其他开发语言 >> itcl:怎么将class对象加到数组中
  详细解决方案

itcl:怎么将class对象加到数组中

热度:9194   发布时间:2013-02-26 00:00:00.0
itcl:如何将class对象加到数组中?
将class对象加到数组中时,提示
============================================================
A::f1
can't read "a": no such variable
  while executing
"set arr(0) $a"
  (file "E:\eclipse\eclipse_workspace\main.tcl" line 33)============================================================
创建对象,对象名就成了一个tcl 命令,
是不是这样,所以认为 a不是变量呢?

在tcl语言中,本身是不支持复杂对象加入数组的,
Itcl应该支持,不知该如何使用?
哪位兄弟姐妹知道的,帮忙讲下,谢谢!


============================================================
code:
package require Itcl

::itcl::class A {

  public method f1 { } {
  puts "A::f1"
  }
}

::itcl::class B {
  public method f2 { } {
  puts "B::f2"
  }
}

A a
a f1

array set arr ""
set arr(0) $a
puts $arr(0)
=============================================================

------解决方案--------------------------------------------------------
数据类型不符,需要将数据的类型进行转换后,才可以添加到数组中。
  相关解决方案