关于defun内嵌套defun的问题
新手自己写代码时,想把相关联的东西放在一起。于是就出现了如下代码(defun C:TT()
(cond
(test1 (APP_TT1))
(test2 (APP_TT2))
);end cond
(defun APP_TT1()
(command "line")
);end defun TT1
(defun APP_TT2()
(command "copy")
);end defun TT1
);end defun
但是这个代码实际上并无法执行,因为无法跳转到APP_TT1上,会说找不到。
假如把defun TT1和TT2放在最开头,而其他判别条件放在后面,就能正常执行。
我猜测是他读代码是从上往下读,读到前面没有提到过,又无法识别的就跳错了,请问是不是这样。
因为我是通过initget搞了好几个选项的,以至于前面好多的defun,不同的东西修改起来从下往上翻好不习惯。 编译成vlx看看能不能 对 代码是从上往下加载的 飞诗编辑器 在函数名上右键 可以跳转至函数位置 刚学建议多看看书,看了就多写代码,N年后又是一位大侠。
学习资料:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=80070 先定义,再使用 VLISP是面向过程的,遵循先定义再使用的原则,所以Defun里面的Defun要放在世纪运行的代码前面先定义,后面才能调用。 你有种再说一遍 发表于 2024-3-18 21:28
编译成vlx看看能不能
没有试过咧。 飞雪神光 发表于 2024-3-18 21:16
对 代码是从上往下加载的 飞诗编辑器 在函数名上右键 可以跳转至函数位置
谢谢谢谢,我试试。 ssyfeng 发表于 2024-3-19 08:48
刚学建议多看看书,看了就多写代码,N年后又是一位大侠。
学习资料:http://bbs.mjtd.com/forum.php?mod=v ...
现在就是业余时间给自己私人定制一点功能啦。太复杂的东西还不会。 vitalgg 发表于 2024-3-19 09:28
先定义,再使用
好的,谢谢。
页:
[1]
2