c++ - 在 C++ 中嵌入 Lua

标签 c++ lua undefined embedding

我一直在尝试将 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;
}

最佳答案

确实,lua 5.2 reference manual 中没有提到 lua_open 函数。

一个lua_State是用lua_newstate构造的,你可以使用lauxlib.h中的luaL_newstate

获得此类问题答案的更快方法是查看 Lua 5.2 源代码(我刚刚做过)。

关于c++ - 在 C++ 中嵌入 Lua,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8552560/

相关文章:

C++ 映射值在运行时没有改变,我做错了什么?

c++ - 使用 Boost Asio 同步 HTTPS POST

c++ - C++ STL 容器中的多态性

c++ - 尝试使用变量名实例化 C++ 中的类成员

lua - Lua中将字符串转换为数字

c++ - 从 C++ 调用 Lua 表中的函数

javascript:检查对象是否具有特定元素或属性的最佳方法?

c++ - 关于类(class)返回另一个类(class)的 SWIG-Lua 问题

javascript - 想了解更多关于 undefined 的信息

javascript - 为什么函数响应 .prototype 但常规对象不响应?