Lua多重继承代码实例
更新时间:2015年04月22日 11:11:36 投稿:junjie
这篇文章主要介绍了Lua多重继承代码实例,本文直接给出实例代码,需要的朋友可以参考下
local function search(k, plist) for i, v in pairs(plist) do local temp_v = v[k] if temp_v then return temp_v end end end function createClass(...) local c = {} local parents = {...} --父类列表中搜索方法 setmetatable(c, { __index = function(t, k) return search(k, parents) end } ) c.__index = c --定义一个新的构造函数 function c:new(o) o = o or {} setmetatable(o, c) return o end return c end Named = {} function Named:getname() return self.name end function Named:setname(n) self.name = n end local NamedAccount = createClass(Account, Named) account = NamedAccount:new({name = "Paul"}) print(account:getname())
您可能感兴趣的文章:
相关文章
Lua中的协同程序之resume-yield间的数据返回研究
这篇文章主要介绍了Lua中的协同程序之resume-yield间的数据返回研究本文讲解了resume的参数、resume函数的第二个返回值、yield的返回值等内容,需要的朋友可以参考下2014-09-09
最新评论