上次有个同学问我,说lua太简单了,没有什么结构,也不好做面向对象编程。其实可以这样说,Lua中的table就是一个对象。
下面我一点一点介绍Lua的面向对象编程。
一、对象的方法函数:
- Hero={attack=100}
- functionHero.skill(addAttack)
- Hero.attack=Hero.attack+addAttack
- end
- Hero.skill(20)
- print(Hero.attack)-->120
上面的先创建了一个函数,并调用该函数。
仔细的同学可能发现了,调用函数的时候使用了全局Hero。我在上一篇细节介绍中提过,Lua尽量减少全局变量的使用。而且这里也有风险,一不小心修改了Hero,可能Hero就不能正常工作了。
那么联想到上一篇写到的local temA = A,有人可能想到了这样修改上面的函数调用:
copy