明经通道 AutoLISP 函数   
apply
 

将参数表传给指定的函数

(apply ’function list)

参数

’function

函数,可以是表示 defun 或 lambda 表达式的符号。

list

表。如果函数不接收参数,则该参数为 nil。

返回值

函数调用的结果。

示例

Command: (apply 'mapcar (cons 'min '((1 0 0) (2 2 0) (1 2 0))))
(1 0 0)
Command: (apply '+ '(1 2 3))
6

Command: (apply '(lambda (x z y) (* x (- y z))) '(5 20 14));z对应20,Y对应14
-30
Command: (apply (function(lambda (x y z) (* x (- y z)))) '(5 20 14));z对应14,Y对应20
30
Command: (apply (quote(lambda (x y z) (* x (- y z)))) '(5 20 14))
30

Command: (eval (min 5 2 1));表太长则溢出
1
Command: (apply 'min '(5 2 1));(apply 'min (list 5 2 1)) (apply 'min (quote(5 2 1)))
1
Command: (apply '(lambda () (min 5 2 1)) '());(apply '(lambda () (min 5 2 1)) ())
1
Command: (apply '(lambda nil (* 5 2 1)) nil);这2处nil不能省
10

明经通道 版权所有 未经许可 不得传播

 评论