Stu*_*ent 2 struct common-lisp
是否有一种解决方法可以按顺序处理结构体槽位绑定,LET*以便之前的槽位分配对后面的槽位可见?
例如在下面我想c对d.
(defstruct (my-struct (:constructor cons-struct (a b)))
(c (* a b))
(d c))
Run Code Online (Sandbox Code Playgroud)
我怎么能得到这个效果?
您已经使用了boa 构造函数。您可以使用它的boa lambda 列表按顺序执行操作:
(defstruct (my-struct (:constructor cons-struct (a b
&aux
(c (* a b))
(d c))))
c
d)
Run Code Online (Sandbox Code Playgroud)