인자갑 중 call by reference로 인한 호출이 존재하는 lua
글쓴이: dltmdgud / 작성시간: 토, 2013/12/07 - 6:55오후
루아를 이용한 작업을 하다가 반드시 함수에서 반드시 레퍼런스를 받아야하는 상황이 있는데요.
보통땐 call by value로 호출할 땐, 잘 되다가 call by refernce를 이용만 하면 에러가 발생하네요.
이를 해결할 방법은 없을까요?
luabind::call_function말고, luaL_dostring을 이용하였을 때 방법을 좀 알고 싶습니다.
- luabind::call_function는 boost::ref를 이용하면 되는 것으로 알고 있습니다.
void addFunc(const char* s,int& b) { std::cout << s << b << std::endl; } int _tmain(int argc, _TCHAR* argv[]) { lua_State* pLua = lua_open(); luaopen_base(pLua); luaL_openlibs(pLua); luabind::open(pLua); luabind::module(pLua) [ luabind::def("addFunc", &addFunc) ]; int i = luaL_dostring(pLua, "addFunc(\"1\",2)" ); std::string strmsg = lua_tostring(pLua, -1); }
Forums:
댓글 달기