假设我已经厌倦了一遍又一遍地写“format t …”,想要更少的按键。那么我可以写出以下代码:
现在,
这个问题的典型解决方案是什么?
(defun puts (fstring &rest vars)
(format t fstring vars))
(puts "~a ~a" 1 2)
;; error message results, because vars became (1 2)
现在,
vars
已经被转换成了我传递的任何参数列表。它需要被“展开”为一个值列表。这个问题的典型解决方案是什么?