我正在加载一个 Lua 脚本,该脚本将被运行多次,并且另一个 Lua 脚本作为库被加载以供第一个脚本使用。
让我们看一下 HelloWorldAPI.lua:
我按照以下顺序做事:
一些代码已被删除以保持简单。
但是,当调用HelloWorld函数时,我收到一个错误,说我正在尝试调用空值。
为什么?
在执行lib脚本时声明的函数应该是全局的,因此在SomeScript.lua中应该可用,对吧?
谢谢。
让我们看一下 HelloWorldAPI.lua:
function HelloWorld()
return "Hello world"
end
和 SomeScript.lua :
HelloWorld()
我按照以下顺序做事:
L = luaL_newstate();
luaL_openlibs( L );
luaL_loadfile( L, "HelloWorldAPI.lua" );
luaL_loadfile( L, "SomeScript.lua" );
...
lua_pcall( L, 0, 0, 0 )
...
lua_pcall( L, 0, 0, 0 )
...
一些代码已被删除以保持简单。
但是,当调用HelloWorld函数时,我收到一个错误,说我正在尝试调用空值。
为什么?
在执行lib脚本时声明的函数应该是全局的,因此在SomeScript.lua中应该可用,对吧?
谢谢。
C
? - Shark