我有一个函数嵌套在一组表中相对较深.有没有一种方法可以在C/C++中获取该函数的"引用",并在需要使用它时将其(和args)推送到堆栈中?
这就是参考系统的用途.函数调用r = luaL_ref(L, LUA_REGISTRYINDEX)
将值存储在注册表中的堆栈顶部,并返回一个整数,该整数可以存储在C端并用于通过函数调用检索该值lua_rawgeti(L, LUA_REGISTRYINDEX, r)
.
见PIL章,还有的文档luaL_ref()
,lua_rawgeti()
以及luaL_unref()
为完整的故事.