quickcocos 中让 Lua有了”继承”的能力,看起来更像OO语言了
通过测试,发现其基类的成员变量和成员函数都可以被很好的继承下来
例子
------------------基类-----------------------
local base = class("base")
function base:ctor()
print("---base.ctor---")
self.m = 0
end
function base:getName( )
print("---base---")
end
------------------派生类-------------------------
local deriv = class("deriv", base)
function deriv:ctor()
self.super.ctor(self) -- 注意这里的写法
-- self.super:cotr() -- 这种写法也不报错,但是所有new出来的对象共享一个base
end
function deriv:getMyName()
print("---deriv---")
self.m = self.m + 1
print(self.m)
end
local d = deriv.new()
d:getName()
d:getMyName()
控制台输出为
—base.ctor—
—base—
—deriv—
这个小小的例子验证了lua中关于继承的测试,可以开始大工程了。