2013-04-04 62 views
0

我在Lua中有两个文件的问题。 FILEA可能看起来像这样:需要一个使用在另一个Lua文件中声明的函数的Lua文件

require "FileB" 
local function foo(bar) 
    -- random stuff 
end 

而且FILEB看起来像这样

foo(bar) 

但一个错误弹出,说foo是无效的功能。有没有解决这个问题?

+0

这可能有助于[如何创建包括在Lua语言文件?(http://stackoverflow.com/questions/2932172/how-to-create-include-files-in-lua-language) – graphite 2013-04-04 06:32:02

回答

1

通常的做法是将函数放在所需的文件中,而不是调用代码。

无论如何,因为您有上面的代码,所以在定义它之前您正在调用foo。所以移动foo的定义下面的require,不要使用local。

function foo(bar) 
    -- random stuff 
end 

require "FileB" 
+1

这是行不通的,因为foo是本地的,不能在调用全局foo的FileB中看到。 – lhf 2013-04-04 10:53:22

+0

-1:对于无功能,每lhf的评论。 – 2013-04-04 12:20:54

相关问题