0
点赞
收藏
分享

微信扫一扫

lua中 do end 的用法

ZGtheGreat 2022-02-14 阅读 132

在 Lua 中,使用 do-end 将一条或多条语句包起来作为一个语句块儿(block),形成一个作用域,在这个作用域中定义的局部变量只在当前作用域有效,出了作用域之后就会被垃圾回收器自动回收!

local x1 = 1
local x2 = 2
local sum = x1 + x2
print(x1, x2) --1   2
do
    local x1 = 1
    local x2 = 2
    local sum = x1 + x2
end
print(x1, x2) --nil  nil

一般使用的情况

需要严格的控制某些局部变量的作用域

local a, b = 1
do
    local a = a + b
    print(a)    --2
end
print(a)        --1

使用 do return end 来中断所在方法

local function func()
    print(1)    --1
    do return end
    print(2)
end
举报

相关推荐

0 条评论