我想創建一個這樣簡單的例子程序:如何處理傳遞給PROC unexisting變量
proc name {args} {
foreach val $args {
puts $val
}
}
但我想處理不存在變量的過程,像碼事如下圖所示:
proc name {args} {
foreach val $args {
if [info exists $val] {
puts $val
}
}
}
的問題是,不執行代碼,因爲只要我調用過程與unexisting變量立即檔,進入代碼,說有那並不是一個變量之前不存在。這是否可能是因爲程序在進入身體之前檢查論證存在?
我可以通過使用預定義值更改args
幾個可選變量來使其工作,但這會限制該過程並使其看起來很糟糕。
我可以創建一個處理未知變量的過程嗎?