摘要: 【前言】 元表对应的英文是metatable,元方法是metamethod。我们都知道,在C++中,两个类是无法直接相加的,但是,如果你重载了“+”符号,就可以进行类的加法运算。在Lua中也有这个道理,两个table类型的变量,你是无法直接进行“+”操作的,如果你定义了一个指定的函数,就可以进行了。 阅读全文
posted @ 2016-11-01 17:37 Ring_1992 阅读(3433) 评论(0) 推荐(0) 编辑
摘要: 【具有默认值的table】 我们都知道,table中的任何字段的默认值都是nil,但是通过元表,我们可以很容易的修改这一规定,代码如下: 可以看到,在代码中,setDefault函数为所有需要默认值的table创建了一个新的元表。如果准备创建很多需要默认值得table,这种方法的开销或许就比较大了。 阅读全文
posted @ 2016-11-01 14:33 Ring_1992 阅读(5224) 评论(1) 推荐(0) 编辑