使用LuaBridge和C++处理Lua模块时出错

我无法在另一个Lua文件中包含Lua文件。我使用C++和LuaBridge编译Lua。这是我的主函数。非常简短。

lua_State* luaState = luaL_newstate();
luaL_openlibs(luaState);
luaL_dofile(luaState,“res/script.lua”); 

LuaRef mainFunction = luabridge::getGlobal("start",luaState);

try {
mainFunction();
}catch(const luabridge::LuaException& e) {
std::cout << e.what();}

lua_close(luaState);
std::cin.get();

这是我的“script.lua”文件:

mymathmodule = require("mymath")

main = function()
end

以及在同一目录中的“mymath.lua”。

 mymath = {
 add = function(a, b)
 return a + b
 end
}

return mymath

程序就崩溃了。仅删除“mymathmodule = require("mymath")”行不会产生错误。问题是什么?

点赞