lua-类的实现

实现思想

  • 1 用一个“全局”表存class类型
  • 2 定义本类基础的“成员”,如super,构造函数,new函数等等
  • 3 针对本类型的声明,创建成员表(放成员的表-vtbl)且给其设置元表。定义某成员时,如果不存在则存储在成员表。获取某成员时,在成员表找。
    (其中,包含__newindex和_index事件(键名:元方法<func/table>)前者是为了将成员的定义记录在表中。)
  • 4 以本类型作为key,将成员表存储记录住。
  • 5 如果super存在,获取某成员时,去全局表里查询,赋值给本类成员表。--用__index元方法实现

Lua class 的几种实现

原文地址:https://www.cnblogs.com/Jaysonhome/p/13491923.html