나는 userdata 객체를 사용하여 잘 작동하는 스크립팅 시스템을 가지고있다. 그러나, 나는 이제 일반 테이블을 가질 수있는 내 userdata에 대한 속성을 원합니다. 정상적인 테이블을 만들고 메타 테이블을 설정하여 현재 사용중인 메타 메서드 집합을 사용한다고 생각합니다. 그러나이 작업을 수행하는 방법을 이해하는 데 어려움을 겪고 있습니다. 간단한 조정
나는 Lua API를 사용하여 사용자 데이터로 래핑 된 내 자신의 C++ 객체에 대한 메타 이벤트를 무시합니다. 그러나 일부 메타 이벤트는 사용자 데이터 또는 사용자 데이터로 변환 할 수있는 일반 값일 수있는 여러 인수를 사용할 수 있습니다. 첫 번째로 두 개의 사용자 데이터를 함께 추가하면 __add가 호출되는 이러한 메타 이벤트에 대해 한 번만 호출되는
현재 C++에서 루아로 함수를 전달하려고합니다. 문제는이 함수가 (int, int, char *, ...)의 매개 변수를 가지고 있다는 것입니다. 나는 Lua를 사용하는 것에 꽤 새로운 것이다. 그래서 나는 루아 스택으로부터 모든 인수를 얻었고 관련 (...) 것들을 벡터에 넣었다. 지금 뭐야? 내가 루아 상태로 전달할 경우 void MVC_View::Pr
나는 실행중인 프로세스의 루아 스크립트 디버거를 작성하는 노력하고있어 및 (C에서) 그렇게하는 문서화 된 방법은 lua_sethook 사용하는 것입니다 typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar);
: int lua_sethook (lua_State *L, lua_Hook f, int mask, in
와 루아 테이블을 만드는 방법? 나는 테이블을 만들고 값을 넣는 방법을 알고 있지만 테이블의 이름을 설정하는 방법을 모른다. 이름없이 테이블을 만들기위한 코드 : lua_createtable(L, 0, 3);
lua_pushnumber(L, 1);
lua_setfield(L, -2, "a");
lua_pushnumber(L, 2);
lua_set
이 작동 luaL_dofile(lua, "mnemonics.lua");
는 대신, "문자열 값을 호출하는 시도"를보고합니다. 나는 luaL_loadfile(lua, "mnemonics.lua");
이 LUA_OK을 반환로 교체 할 때,하지만 돼있처럼 스택에 함수를 밀어하지 않습니다. 사실 스택은 나중에 비어 있습니다 (gettop보고 0). 나는 d
나는 C++ 프로젝트를 가지고 있으며 duktape JS 라이브러리를 사용하고 있습니다. JS에서 전역 함수를 등록하고이 함수를 사용하여 객체에 대한 포인터를 클로저 데이터로 저장해야하므로 함수가 호출 될 때이 포인터에 액세스 할 수 있습니다. 나는 루아의 C API에서이 작업을 수행하는 방법을 알고 : lua_pushlightuserdata(L, this