我是一个新手lua程序员,还有很多东西我可能不知道。我在谷歌上搜索了一下self在lua中的含义,但仍然不理解。如果有人能给我提供最简单的解释,说明在lua中"self"是用来做什么的,那将非常有帮助。
self
只是一个变量名。如果你使用特殊语法,Lua通常会自动定义它。
function tbl:func(a) end
是语法糖,用于
function tbl.func(self, a) end
这意味着 Lua 将自动创建一个名为 self
的第一个参数。
这与特殊的函数调用一起使用:
tbl:func(a)
这是语法糖,用于
tbl.func(tbl, a)
这样self
通常是指表格。当您在Lua中进行面向对象编程并需要从方法内部引用对象时,这非常有帮助。
类似于C++中的this
。