对于lua中handler方法,一直在使用,但是它的原理一直没有弄清楚,今天自己闲来无事认真测试了下,总算弄懂了,向大家分享下自己的心得
我在一个类里面写
输出:
而handler做的正是相同的事,相当于他帮你在handler的第一个参数传入的OBJ对应的类中重新写了一个和第二个参数相同的function,但是self换成了自己的属性。
简而言之,就是:handler(nowSelf,other.Func)
将别人的方法偷过来,明白了没,第一个传入要偷东西的人,第二个传入被偷东西的人的方法(点的形式)。
其中参数也是附带传递的哦,非常方便。