1_7_1 发表于 2015-9-9 17:11:11

求助:用defun定义函数时,如何定义任意多数量参数?

本帖最后由 1_7_1 于 2015-9-9 17:13 编辑

一般defun后的参数数量是恒定的,例如
(defun xx (a b)
(+ a b))
xx后面是两个参数a,b
我的问题是,用defun定义函数时,如何定义任意多数量参数?例如:
(defun xx (a b ...)
(+ a b ....))
这样的话,无论xx后跟着多少参数,都能计算了.
谢谢!

springwillow 发表于 2015-9-9 17:31:22

这种情况LISP的处理方法是用表做为参数传递

1_7_1 发表于 2015-9-9 17:39:07

springwillow 发表于 2015-9-9 17:31 static/image/common/back.gif
这种情况LISP的处理方法是用表做为参数传递

我之前问过,在clisp里面可以用&rest来表示其他参数,但是不知道AutoLisp没有这样的东西

vectra 发表于 2015-9-9 21:02:13

lisp不支持可变参数

小媳妇fanfan 发表于 2015-9-15 16:17:20

不支持可变参数。

baitang36 发表于 2024-6-2 04:50:56

vectra 发表于 2015-9-9 21:02
lisp不支持可变参数

fas支持可变参数,编译后改一下就行
页: [1]
查看完整版本: 求助:用defun定义函数时,如何定义任意多数量参数?