局部变量保留Gl
上述样本代码有一个局部变量“a”,但当我从VLIDE“>工具>检查编辑器中的文本”运行代码时
为什么变量仍然是全局变量?
代码有问题吗?
非常感谢你的帮助。。 它不是全局的,但由于您在子函数中使用了它,它会抛出友好的警告,这没有什么错。
要检查这一点,只需运行例程,然后在命令行中键入:!a来看看它是否有任何价值。
塔瓦特 请注意,如果在调用函数后对变量进行了本地化,则创建了一个同名的全局变量,该变量将在当前绘图期间可用。可能需要在新图形上再次尝试该功能。
关于代码逻辑的注释,如果保留了系统变量的当前状态,为什么只在出错时恢复,而不在正常退出时恢复?
(setq a (getvar "cmdecho"))
...
(setvar "cmdecho" 1) 为了更安全地使用您在代码中所做的操作,请参阅以下调用。
(if a (setvar "cmdecho" a))
如果这有帮助的话,我已经有一段时间使用此函数在autocad运行时查找全局变量。
非常便于确保代码干净。
3
谢谢Tharwat提供的信息。
通常在几乎所有情况下,发生错误时不会调用某些变量。。
不客气。
你能举个例子吗?
哦,我太粗心了。;我必须检查我的代码下一次之前张贴。
中东又是一个白天黑夜。。。
希望我能举个例子。。
周末快乐! 你说得对,对我来说,所有的日子都是一样的,所以别担心
页:
[1]