Lua可以用local定义局部变量,
当多次对同一个变量名使用local, 将定义不同的局部变量.
如果局部变量是在一个循环内部定义的,则每次循环都是一个新的局部变量.
当非全局函数使用upvalue的局部变量,到底是使用哪一个,
是由这个函数生成的时候这个变量决定的.
如果有两个互相调用的局部函数,
则需要提前声明局部变量,
这样在定义函数的时候,就不可再写local
local data = 100;
local function fun1()
print(data);
data = data+50;
end
data = 200;
local data = 300; -- 重新定义一个局部变量
local function fun2()
print(data);
data = data+50;
end
data = 400;
--调用
fun1(); -- 200
fun2(); -- 400
fun1(); -- 250
fun2(); -- 450
本文详细介绍了Lua语言中局部变量的定义与使用方法,包括如何通过local关键字创建局部变量、在循环内定义局部变量的效果、非全局函数如何引用局部变量等关键概念。此外还讨论了两个相互调用的局部函数在定义时需要注意的问题。
9527

被折叠的 条评论
为什么被折叠?



