Tag: lua userdata

Lua userdata:无法同时访问arrays和方法

我有这个人的问题: Lua userdata数组访问和方法 其中当我设置userdata的metatable的__index时,它总是调用getter,而不是我没有为meta-events声明的其他方法。 上面链接的解决方案是在Lua中,我尝试了一个看似不优雅的C实现,但无论如何,它创建了一个新问题,因为我的新方法不能再接受参数,我得到了这个错误: attempt to call method ‘asTable’ (a table value) 在这个Lua声明中: print_r(c:asTable() ) 这是我设置一切的方式: //Methods, many of which are overridden Lua meta-events (with the underscores) static const struct luaL_reg vallib_m [] = { {“asTable”, PushLuaTable}, //these functions are not called {“asCopy”, CopyLuaVal}, {“__newindex”, SetLuaVal}, {“__index”, GetLuaVal}, {“__tostring”, ValToString}, {“__gc”, GarbageCollectVal}, {“__metatable”, HideMetaTable}, […]