【发布时间】:2016-05-20 08:42:48
【问题描述】:
我在下面有一个 Lua 代码:
a, b = 1, 10
if a<b then
print(a)
local a
print(a)
end
print(a, b)
只是一个小问题:
首先,我创建了一个全局变量 a = 1;
然后在 then 块中,我使用 全局变量 a 来打印它;
然后我声明了一个 local未初始化的变量 a(因此其值为 nil)
然后我的问题来了:在 then 块中创建 局部变量 a 后,我如何才能访问 全局变量 a,是这样吗?可能的 ?如果有,请给我答案:)
【问题讨论】:
-
这听起来很混乱而且容易出错。
-
@Piglet 请看答案。这个问题是合乎逻辑的,所以有人可以回答。
-
不是你的问题。我的意思是这样重用变量名。它很危险,代码变得难以阅读
-
@Piglet 我明白了,谢谢你的建议 :)
-
一旦你完成了代码并希望尽可能地最小化它以重用这样的变量名,这有点道理,只有这么多的字母和单词,如果 lua 让我们重用他们中有一些。伟大的!虽然您正在测试和做这样的工作,但我建议使用更详细的变量名称以避免混淆。
标签: lua global-variables local-variables