1

假设我有一个类animal,有子类horseduckrabbit。假设我make-instance用来制作 class 的几个对象animal。很久以后,我发现,对于这些对象中的每一个,它实际上是 ahorse或 aduck或 a rabbit。有没有办法重新输入这些对象?简单地创建适当子类型的新对象并复制所有插槽中的数据会很笨拙,因为此时这样的对象已经在其他对象的插槽中的列表中表示,我不得不去通过这些列表并用新对象替换旧对象。

保留相同的旧对象并对它们进行子分类。我可以这样做吗?

4

1 回答 1

2

CHANGE-CLASS,一个标准的 Common Lisp 函数。

于 2012-03-12T12:32:15.603 回答