langjs 发表于 2014-8-3 11:16 static/image/common/back.gif
子函数修改上一级程序变量不是个好习惯。
一般编程不会出现这个情况!
我主要是为了 给EE编辑器 增加监视变量 与 取消、置空监视变量这个功能才 这样编的!
有这个编辑器 , 基本可以不用 自带的编辑器了 , 调试部分我也做了些,简单的错误都可以找出 了!
因为EE现在是收费软件了 , 所以我也不好再推荐了!卖弄下我自定义的lisp编辑器!哈哈
局部变量先进变量表,程序执行完会自动清空(defun c:t12 (/ a1 b2 c3 lst)
(setq a11
b22
c33
lst '(a1 b2 c3)
)
(princ)
) 本帖最后由 wowan1314 于 2014-8-3 12:48 编辑
xyp1964 发表于 2014-8-3 12:32 static/image/common/back.gif
局部变量先进变量表,程序执行完会自动清空
全部代码如下!
我在EE编辑器里面输入某个值 后 自动执行下面这个函数。 其后不会再有程序 处理!
所以对于清空只能在这个函数里面进行!对于同名的无法处理.
其实最好的办法是 下面这个函数 不要变量 ,,通过系统变量 来传递数据!(defun aa:ever-err2 ( *琴瑟琵*琶* )
(if (null *琴瑟琵*琶*)
(setq *jianshibianliang* nil)
(if (= nil (car *琴瑟琵*琶*))
(mapcar
'(lambda(x)
(set x nil)
)
*jianshibianliang*
)
(setq *jianshibianliang*
(vl-remove-if
'(lambda(x)
(member x *琴瑟琵*琶*)
)
*jianshibianliang*
)
)
)
)
(princ)
) 没搞懂你想要的功能
A1 B2 C3已经被清空了 最后再(setq lst (list a1 b2 c3))不就行了吗? 好像又折腾出些好玩功能了
页:
1
[2]