2
在下面的Lisp REPL互動:成員和defparameter
CL-USER> (defparameter *unison* 0)
*UNISON*
CL-USER> (member *unison* '(*unison*))
NIL
爲什麼零退換嗎?
在下面的Lisp REPL互動:成員和defparameter
CL-USER> (defparameter *unison* 0)
*UNISON*
CL-USER> (member *unison* '(*unison*))
NIL
爲什麼零退換嗎?
因爲*unison*
變量被綁定到0
,並且該列表只有一個*unison*
符號,因爲它被引用。在比較試試這個:
(member *unison* (list *unison*))
這實際上評估第二*unison*
返回0
,導致(0)
列表。
或者(不太可能是他想要的)(會員'* unison *'(\ * unison \ *))。 – 2010-05-27 20:42:05
(是的,但考慮到引用可能會引起混淆,我也避免提及它 - 談論它需要單獨的答案,如果周圍沒有這樣的答案,我會感到驚訝......) – 2010-05-27 21:11:42