Lua中创建全局变量的小技巧(禁止未预期的全局变量)
Lua有一个特性就是默认定义的变量都是全局的。为了避免这一点,我们需要在定义变量时使用local关键字。
但难免会出现遗忘的情况,这时候出现的一些bug是很难查找的。所以我们可以采取一点小技巧,改变创建全局变量的方式。
local__g=_G
--exportglobalvariable cc.exports={} setmetatable(cc.exports,{ __newindex=function(_,name,value) rawset(__g,name,value) end,
__index=function(_,name) returnrawget(__g,name) end })
--disablecreateunexpectedglobalvariable setmetatable(__g,{ __newindex=function(_,name,value) localmsg="USE'cc.exports.%s=value'INSTEADOFSETGLOBALVARIABLE" error(string.format(msg,name),0) end })
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短