2012-03-15 53 views
0

在下面的代码中,我可以删除“:after”吗?什么是“:before:after:around”在defmethod中真的意味着什么?

(defmethod渲染页面体:后((APP weblocks-web应用)呈现-HTML) ; ...)

我对CLOS真正的新,我的新手的问题,很抱歉?

+4

请参阅http://www.gigamonkeys.com/book/object-reorientation-generic-functions.html和http://psg.com/~dlamkins/sl/chapter14.html – 2012-03-15 06:05:51

回答

2

不,:after意味着方法主体中的代码在主要方法之后执行,而不是主要方法。

同样:around意味着身体“替代”了主要功能,并且它仍然可用。这允许您在调用主方法之前执行一些特定于类的事情,然后在调用主方法之后执行其他一些事情。