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 我要结婚祝福语简短
18 婚前女儿生日祝福语简短