这是我班的包:
(in-package :cl-user)
(defpackage foo
(:use :cl)
(:export :bar))
(in-package :foo)
(defclass bar ()
(baz))
我可以创建一个bar
in package的实例cl-user
。
CL-USER> (defvar f)
F
CL-USER> (setf f (make-instance 'foo:bar))
#<FOO:BAR {10044340C3}>
但我无法访问该成员baz
。这么叫slot-value
……
CL-USER> (slot-value f 'baz)
...导致此错误消息:
When attempting to read the slot's value (slot-value), the slot
BAZ is missing from the object #<FOO:BAR {10044340C3}>.
[Condition of type SIMPLE-ERROR]
我已经尝试添加baz
到:export
列表中,但这也不起作用。
如何从包中导出插槽和访问器?