我在一个命名空间(例如shapes
)中有以下内容:
(derive ::rect ::shape)
(derive ::square ::rect)
现在在shapes
命名空间中执行以下操作:
(isa? ::square ::shape)
返回true
。但是当我在实际实现绘图的命名空间中执行以下操作时,
(isa? ::square ::shape)
它返回false
。所以即使我已经正确地放置了多方法分派函数,我仍然会收到一个错误,说“找不到分派函数”。
我是否遗漏了什么?在一个巨大的命名空间中实现所有类型的形状对我来说似乎毫无意义。
:short/abc
吗? - amalloy