有没有办法在Lua中以任何顺序放置本地函数?

时间:2016-12-09 23:31:50

标签: function lua declaration definitions

似乎将Lua与我习惯的语言区分开来的一件事是,将变量和函数声明放入的顺序非常重要。在函数中,您无法访问在函数之后声明的局部变量。例如:

local function foo()
 return bar
end
local bar = 4
print(foo()) -- prints nil instead of 4

如果您尝试从之前声明的函数访问本地函数,情况也是如此。

在某些情况下,如果你只是小心地以正确的顺序声明事情,这一切都可以解决。但是如果你有两个或更多的功能都需要相互调用呢?这些函数必须是全局函数,还是有某种方法可以使用本地函数?

1 个答案:

答案 0 :(得分:3)

好的,我把它解决了。这只是在定义它们之前声明事物的问题。我不确定它是否适用于功能,但我应该知道。

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 5