创建 Lua 状态时的访问冲突

Access Violation while creating Lua State

本文关键字:访问冲突 状态 Lua 创建      更新时间:2023-10-16

我有一个简单的程序:

#include <lua.hpp>
int main() {
lua_State * ls = lua_newstate(0, 0);
lua_close(ls);

return 0;
}

我将Lua DLL放在正确的文件夹中,链接库,设置包含文件夹并进行编译。它编译干净,但是当我运行程序时,它向我显示 这。我正在使用最新版本的LuaBinaries和Visual Studio 2017

你给lua_newstate一个空指针作为分配器。当然,正如您所看到的,当它尝试分配某些内容时,会出现访问冲突。

你为什么要这样称呼它?也许你想要luaL_newstate()?它提供了自己的分配器系统,因此您无需编写自己的分配器系统。