setmetatable的一点总结

  • Post author:
  • Post category:其他





local obj = {}





setmetatable( obj, { __index = mission_t } )





return obj





mission_t


为对应模块的文件名。













LUA


中的文件中使用


module(“mission_t”,package.seeall )


这样的形式,可以防止某些命名的冲突,相当于


C++





namespace


,在调用这个模块的函数的时候,加上模块名:函数名就可以了。










如果要继承某个模块,使用


setmetatable( obj,{ __index = XXXX } )





XXXX


为希望继承的模块名。










总结:用


lua


进行面向对象的编程


,


声明方法和调用方法统一用冒号


,


对于属性的调用全部用点号




版权声明:本文为xum2008原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。