我一直在尝试将lua嵌入到c ++应用程序中但由于编译器抱怨“lua_open”而无济于事。我正在使用Lua 5.2。
我发现很多文章声称lua_open()在第五个版本中被替换,但没有一个用什么提及。
这是我正在尝试编译的代码
extern "C" {
#include "../lua/lua.h"
#include "../lua/lualib.h"
#include "../lua/lauxlib.h"
}
int main()
{
int s=0;
lua_State *L = lua_open();
// load the libs
luaL_openlibs(L);
luaL_dofile(L,"example.lua");
printf("\nDone!\n");
lua_close(L);
return 0;
}
答案 0 :(得分:35)
lua_open
功能
使用lua_State
构建lua_newstate
,您可以使用luaL_newstate
中的lauxlib.h
获得此类问题答案的更快方法是查看Lua 5.2源代码(我刚刚做过)。