Account = {b = 0} function Account.withdraw(self,v) self.b = self.b - v return self.b end function Account:Haha(v) self.b = self.b + v return self.b end a = Account; Account = nil; print(a.withdraw(a,1)) -- -1 print(a:withdraw(1)) -- -2 print(a.Haha(a,10)) --8 print(a:Haha(10)) --18
:只是一种语法,就是一个可以自动添加self参数的语法,声明方法使用:,默认参数带有self,调用使用:时,将把调用方传进来。
例子中可以看.操作的模式,其实就是:实际的真正意思,:只是可以省略不写仅此而已。