lisp定义的函数里面在运行定义的函数报错传值返回值 reverse,lambda

  • A+
所属分类:CAD二次开发

lsp里面自定义的函数在一个可执行的命令里面运行函数可以返回值,但是在两个以上的函数里面运用,定义的函数里面在套几个定义的函数里面运行,这样会报错,提示: 函数错误,或者lambda等,反正接受不值或者,就是报错类型错误,经过多少实验测试,可以使用返回表的相反函数来返回值,果然可以接受到值,但是接受的值是先后顺序是颠倒的,只需在使用这个函数颠倒一次就回复正常了。。。

函数(reverse 表值),功能返回相反的表,也可作为定义函数里面最后的返回结果等于return效果,

但在lsp里面返回函数只有一层,可以不写,直接在定义函数最后括号里面需要返回变量。

如:

(defun HJBK(ent / )
(setq HJ(list ent '1 2 3 4))
(reverse HJ);返回值
)

(defun HJBK_he(en / )

(setq HJ(HJBK en))
(reverse HJ);返回值,,一层函数直接可以这样(HJ)
)

(defun C:t3()
(setq HJj 'huojibk)
(setq jj (HJBK_he HJj));如果值是颠倒的在使用(everse)这个还原即可

(PRINC jj);

)

复制

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: