这个class方法是为了模拟面向对象功能,不过貌似有个地方有问题。
-- inherited from Lua Object
if super then
cls = clone(super)
cls.super = super
else
cls = {ctor = function() end}
end
这里的clone方法用得有点问题。
简单的比方,父类有个属性name,子类继承过来,然后父类有个方法叫setName修改了name属性。
本来子类调用setName,子类的name属性也应当变化,不过由于是clone。所以子类调用了setName后,
变化的是父类的属性,而子类的没有变化。
这个应该算是一个bug吧,对象对象貌似不是这样的
嗯,谢谢版主了