我正在使用cocos2d-x [lua binding]来移植我的cocos2d [objective-c]游戏并且我有几个类子类.例如,我有一个CCScene的子类[永远不要做它的作用],它有一个onEnter方法.在我的子类中,KCCScene我也有onEnter,在那里我调用了[super onEnter].
所以我已经阅读了很多描述Lua继承的文档,但我从未见过对super方法的调用.
有可能吗?如果是,我应该怎么做像super:onEnter()?
谢谢
这实际上取决于你做OO的具体方式.有些lib提供了"开箱即用"的超级方式,有些则没有.我不熟悉Cocos2d-x,但我认为它没有.
实现这一目标的一种方法是直接使用超类,如下所示:
function KCCScene:onEnter()
doThis()
CCScene.onEnter(self)
doThat()
end
Run Code Online (Sandbox Code Playgroud)
这应该适用于所有执行OO的lib,包括Cocos2d-x.但是,您丢失了漂亮的":"语法,并且需要包含一个显式的"self"参数.