As a side effect, this command creates a variable named "itcl-local-xxx", where xxx is the name of the object that is created. This variable detects when the call frame is destroyed and automatically deletes the associated object.
itcl::class counter { private variable count 0 constructor {} { puts "created: $this" } destructor { puts "deleted: $this" } method bump {{by 1}} { incr count $by } method get {} { return $count } } proc test {val} { local counter x for {set i 0} {$i < $val} {incr i} { x bump } return [x get] } set result [test 5] puts "test: $result" set result [test 10] puts "test: $result" puts "objects: [itcl::find objects *]"
Copyright © 1993-1998 Lucent Technologies, Inc.
Licensed under Tcl/Tk terms
https://www.tcl.tk/man/tcl/ItclCmd/local.htm