在诸如C之类的编程语言中,您可以创建一个匿名代码块来将变量的范围限制在块内,可以使用Lua完成相同的操作吗?
如果是这样,以下C代码的Lua等价物是什么?
void function() { { int i = 0; i = i + 1; } { int i = 10; i = i + 1; } }
Tim Cooper.. 7
你想用do...end
.从手册:
可以明确分隔块以生成单个语句:
stat ::= do block end显式块对于控制变量声明的范围很有用.显式块有时也用于在另一个块的中间添加
return
或break
声明
function fn() do local i = 0 i = i + 1 end do local i = 10 i = i + 1 end end
Joe Huang.. 5
您可以使用关键字do
&分隔块end
.
参考:Lua编程
你想用do...end
.从手册:
可以明确分隔块以生成单个语句:
stat ::= do block end显式块对于控制变量声明的范围很有用.显式块有时也用于在另一个块的中间添加
return
或break
声明
function fn() do local i = 0 i = i + 1 end do local i = 10 i = i + 1 end end
您可以使用关键字do
&分隔块end
.
参考:Lua编程