ns仿真学习(五)-Tcl中类的静态变量与成员变量

来源:互联网 发布:js数组的romove 编辑:程序博客网 时间:2024/04/30 13:03

Otcl中类以instvar声明一个变量,定义类Test,Test instvar声明的是一种类似于全局静态变量,而$self instvar 则表明是类成员变量。具体的示例如下:

simple_test.tcl

Class Test# similar satic variable in c++Test set static_list_ {1 2 3 4 5 6}# "there must be a space before {,or error occurs"Test  instproc print {} {$self instvar list_foreach var $list_ {puts "$var"}Test instvar static_list_foreach var [set static_list_] { puts "$var"}set var 11#wrong ,not the static_list,just the string puts "list length [llength static_list_]" puts "list length [llength $static_list_]"lappend static_list_ $var}Test proc get_list {} {Test instvar static_list_return $static_list_}Test instproc add_list { a } {$self instvar list_lappend list_ $a}Test instproc init args  {$self instvar list_set list_ {1 2 3 4}}proc get_list_pose {l memeber} {}proc fuck {} {Test testset var 10test add_list $vartest print }set list1 {1 2 3 4 5}puts "The contents of list1 are: $list1"fuckset list_ [Test get_list]puts "get list"foreach var $list_ { puts "$var"}
里面涉及了一些列表的操作,以及类函数的调用,以及全局变量的获取函数get_list

原创粉丝点击