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 })
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下