tcl - 在过程中声明时无法识别全局变量
问题描述
谁能告诉我为什么全局变量 y 在下面的代码中没有被识别?
proc add_new_seq {} {
global y 2
rid .kl15_val -row $y -column 4
incr y
}
add_new_seq
解决方案
命令“global y 2”声明了 2 个全局变量,分别命名为 y 和 2(是的,在 Tcl 2 中是一个完全有效的变量名)。这两个变量都没有值。您可能打算:
global y
set y 2
但这每次都会将变量重置为 2。所以你可能想要一些类似的东西:
set y 2
proc add_new_seq {} {
global y
rid .kl15_val -row $y -column 4
incr y
}
add_new_seq
推荐阅读
- mysql - pymysql查询:无法回滚
- ruby - 生产服务器上的 Sidekiq 运行时出错
- arduino - 如何在 ENERGIA IDE 上更改 UART 配置(停止位、奇偶校验位等)?
- python - 如何在 Spark 中加快文件写入速度?
- excel - 比较两列并在指定值不可用时突出显示
- linear-algebra - Metric 和 Norm 有什么区别?
- sql - 我在 Oracle EBS ERP R12 中创建警报我写了这个语句,我收到错误 app-alr-01408 SQL 错误 ora-00909 无效的参数数量
- ruby-on-rails - 无法激活 concurrent-ruby-ext-1.1.3,因为 concurrent-ruby-1.1.4 与 concurrent-ruby (= 1.1.3) 冲突 (Gem::ConflictError)
- opendaylight - 如何使用 opendaylight 解析 yin 文件
- dart - 如何在带有 tabBar 的屏幕上 disposeError 后修复 setState