码迷,mamicode.com
首页 > 其他好文 > 详细

lua中self的作用

时间:2016-03-02 18:21:01      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:

lua中self的作用

self其实就相当于Java,C++中的this对象,我们看代码:

a = {x = 3, y = 4}  
  
a.__index = function(table, key)  
                print("__index")  
                return a[key]  
            end  
    --注:  
    --冒号,在定义的时候省略掉了self  
    --点,在定义的时候不省略self  
--[[   
function a.new(self, o)  
    o = o or {}  
    print("new")  
    setmetatable(o, self)  
    return o  
end  
]]  
  
function a.new(o)  
    o = o or {}  
    print("new")  
    setmetatable(o, a)  
    return o  
end  
  
--上下两种写法是等价的  
              
local b = a:new() --调用可以等价于a.new(a, {})  
  
print(getmetatable(b))  
              
print(b.x)  


lua中self的作用

标签:

原文地址:http://blog.csdn.net/heyuchang666/article/details/50779782

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!