在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
上一篇介绍了__index元方法,总结来说:__index元方法是用于处理访问table中不存在的字段时的情况。 而今天,介绍的__newindex元方法,总结来说,就是:用于处理给table中不存在的字段赋值时的情况。也就是说,当给table中不存在的字段赋值时,将会调用__newindex元方法,代替赋值操作。 tb = setmetatable({name = "dong"},{__newindex = function(tb, k, v) print("can,t assgin value:"..v.." because no this key:"..k.." in tb") end }) tb.age = 12 打印结果:can,t assgin value:12 because no this key:age in tb 总结: (1)如果__newindex是一个函数,则在给table不存在的字段赋值时,会调用这个函数。 (2)如果__newindex是一个table,则在给table不存在的字段赋值时,会直接给__newindex的table赋值。
|
请发表评论