main.tcl と paths.tcl の 2 つのファイルがあります。
main.tcl:
set p "paths.tcl"
puts $p
if {[lindex $argv 0]} {
source $::p
puts $::techDir
}
namespace eval ::newWkSpace {
source $::p
}
puts $::newWkSpace::techDir
パス.tcl:
set techDir ../tech
そして、私は2つの試行を行います:
$ tclsh main.tcl 0
paths.tcl
../tech
$ tclsh main.tcl 1
paths.tcl
../tech
can't read "::newWkSpace::techDir": no such variable
while executing
"puts $::newWkSpace::techDir"
(file "main.tcl" line 11)
誰かがエラーを説明できますか?最初の試行でエラーが発生しないのはなぜですか? (これは tcl 8.5 の場合です)