Windows 10 x64, MSVC 2017, LuaJIT 2.0.5.
Я искал в Интернете, но ответы не помогли.
В основном я пытаюсь следовать этому руководству , за исключением того, что я должен был поместить #include <LuaBridge.h>
после включения Lua, потому что в противном случае это не работает, говоря, что LuaBridge должен идти после включения Lua.
Однако, я получаю следующую ошибку: PANIC: unprotected error in call to Lua API (attempt to call a nil value)
.
Понятия не имею, почему. Если вам нужно больше информации - просто скажите что.
#include "stdafx.h"
#include <iostream>
#include <lua.hpp>
#include <LuaBridge/LuaBridge.h>
using namespace luabridge;
using namespace std;
int main()
{
lua_State* L = luaL_newstate();
luaL_dofile(L, "script.lua");
luaL_openlibs(L);
lua_pcall(L, 0, 0, 0);
LuaRef s = getGlobal(L, "testString");
LuaRef n = getGlobal(L, "number");
string luaString = s.cast<string>();
int answer = n.cast<int>();
cout << luaString << endl;
cout << "And here's our number:" << answer << endl;
system("pause");
return 0;
}
script.lua:
testString = "LuaBridge works!"
number = 42