LUA元表的正确理解

TableA = {}
function TableA:f1()
	print("TableA")
end

mt = {}

function mt:__tostring()
	return "mt to string"
end


function mt:f2()
	print("mt")
end

mt__index = {}

function mt__index:f2()
	print("mt__index");
end

mt.__index = mt__index
setmetatable(TableA, mt)

TableA:f1();
TableA:f2();
print(TableA)


输出

TableA
mt__index
mt to string


Program in LUA中老是把metatable的真实实现与面向对象中继承实现搞混淆

setmetatable(o, self)
self.__index = self



阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/v2nero/article/details/52347349
文章标签: LUA metatable 元表
个人分类: LUA metatable
上一篇LUA单继承与多继承实验
下一篇RDMA相关
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭