我很难理解lua中的冒号运算符。所以我做了一些关于冒号操作员的实验并得出了这个结论。
class = {}
function class:me()
end
等于
function class.me(self)
end
我做出了正确的结论吗?
如果没有,问题是什么?
答案 0 :(得分:4)
你的结论是正确的。
:形式只是语法的糖。用self作为第一个参数。记录在案:
冒号语法用于定义方法,即函数 有一个隐含的额外参数self。因此,声明
function t.a.b.c:f (params) body end
是
的语法糖t.a.b.c.f = function (self, params) body end