系统变量的设置,如何处理才最好?
本帖最后由 【KAIXIN】 于 2012-11-28 09:39 编辑大家都知道:
方法1: (command "osmode""0""pickbox""2")
方法2:(setvar "osmode" 0)(setvar "pickbox" 2)
以上两种方法都可以设系统变量的值,
如果要设置很多个系统变量的值,那种最快呢?
可以用表函数 foreach 循环处理吗?
以下方法怎么不对?
(foreach lst '(("osmode" 0)
("pickbox " 2)
)
(setvar (CAR lst)(CADR lst))
)
http://bbs.mjtd.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 【KAIXIN】的微博 (setvar (CAR(CAR lst)) (CADR(CAR LST))) wowan1314 发表于 2012-11-28 09:30 static/image/common/back.gif
(setvar (CAR(CAR lst)) (CADR(CAR LST)))
对啊,我忘了是表中表了,
可是设系统变量还是不行? 本帖最后由 ll_j 于 2012-11-28 09:50 编辑
(foreach lst '(("osmode" 0)
("pickbox" 2)
)
(setvar (eval (CAR lst))(CADR lst))
)
我趋向于用setvar,不到不得已不使用command,这是因为使用了较多的command后,程序undo会变得复杂。
ll_j 发表于 2012-11-28 09:49 static/image/common/back.gif
我趋向于用setvar,不到不得已不使用command,这是因为使用了较多的command后,程序undo会变得复杂。
就大批量的设置系统变量值而已,比如:标注样式那样的,COMMAND 是不是要快些? 没有测试过速度,应该不会有大差别吧,就个人的理解,setvar是直接设置系统变量,而command是使用命令的方式来设置系统变量,深层次地,还是要经过变量设置这个过程,所以command应该慢一些。
另外,有些系统变量是没有对应command命令的,所以,我认为还是使用setvar好一些。
早期写程序的时候,因为系统较慢,且内存很少,经常会纠结于怎样增加运行速度,怎样减少内存占用,我认为,现在完全不必要再纠缠于这些,更应该考虑的是,怎样使得程序更规范、更系统、更易读懂。 6楼的看法,完全赞同
command 相当于在命令行输入 命令 执行
setvar 是直接针对内部参数赋值,应该是setvar 快一些。
我采用的 是setvar 进行初始参数设置。 感谢作者的分享! 感谢分享经验之谈。初学,command,直观点
页:
[1]