upvar

    1熱度

    1回答

    我收到了這個奇怪的問題。 我使用TCL 8.3 後,我在TCL殼定義這個PROC % proc incr { varName {amount 1}} { puts $varName upvar #0 $varName var puts $varName if {[info exists var]} { set var [expr $var + $

    2熱度

    1回答

    我有兩個procs:從MAIN我打電話給另一個proc Glob。 $Allforces是列表的列表。 proc ::MAIN {} { # something ::Glob $AllForces } proc ::Glob {Input} { upvar $Input AllForces # do something } 我得到 「No suc

    3熱度

    3回答

    想從TCL專業人士的建議最佳實踐。 假設您想通過使用proc構造一個包含特定數據的列表。現在哪個是最好的方法? proc processList { myList } { upvar $myList list_ #append necessary data into list_ } proc returnList {} { set list_ {} #

    2熱度

    1回答

    Upvar創建指向different stack frame中變量的鏈接,有時稱爲call stack或different scope。 Upvar還用於爲全局(或名稱空間)變量2創建別名。但是命名空間僅由namespace eval命令創建。一個新的堆棧框架由proc命令創建。 命名空間和調用堆棧似乎是TCL naming context可以更改的兩種方式。 Upvar和Uplevel可以在名稱

    1熱度

    2回答

    這涉及到Tcl的8.5 說我有一個非常大的字典。 從視圖(內存佔用等)性能點,假設我不能修改字典做,應該upvar提供在內存方面一個巨大的性能提升?我正在使用具有TCL外殼的EDA工具,但供應商禁用了TCL內存命令。我知道的Tcl可以在引擎蓋下分享字符串性能...相同的字典可以通過多個嵌套特效的叫聲。 謝謝。

    1熱度

    3回答

    我需要一個能夠從調用者的名稱空間訪問,讀取和更改變量的過程。該變量被稱爲_current_selection。我試圖用幾種不同的方式使用upvar,但沒有任何工作。 (我寫了一個小測試程序來測試upvar機制)。這裏是我的嘗試: 調用PROC: select_shape $this _current_selection PROC: proc select_shape {main_gui var