gpt4 book ai didi

lua - 在lua中访问全局变量

转载 作者:行者123 更新时间:2023-12-04 18:28:34 24 4
gpt4 key购买 nike

我有一个 Lua 代码如下:

a, b = 1, 10
if a<b then
print(a)
local a
print(a)
end
print(a, b)


只是一个小问题:

首先,我创建了一个全局变量 a = 1;

然后在then block 中我使用全局变量a打印它;

然后我声明了a未初始化的局部变量a(因此它的值为nil)

然后我的问题来了:在then block 中创建了局部变量a 之后,如何访问全局变量a,是吗?可能的 ?如果是这样,请给我一个答案:)

最佳答案

使用_ENV.a访问全局变量,在本地变量使用相同的名称后!

注意,Lua 5.1及以下版本使用_G

编辑,刚刚测试过这个:

a, b = 1, 10
if a<b then
local a = 12
print(a) -- Will print 12
print(_ENV.a) -- Will print 1
end
print(a, b) -- Will print 1 10

它工作正常,给了我所需的输出引用 _ENV.a

关于lua - 在lua中访问全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37342021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com