在下面的Lisp REPL交互中:

CL-USER> (defparameter *unison* 0)
*UNISON*
CL-USER> (member *unison* '(*unison*))
NIL

为什么要退货?

最佳答案

因为*unison*变量被绑定到0,并且列表自被引用以来只有一个*unison*符号比较一下:

(member *unison* (list *unison*))

这实际上将计算返回*unison*的第二个0,从而生成一个(0)列表。

关于lisp - 成员和defparameter,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2917608/

10-12 14:12