lua_next

cpp 复制代码
       lua_pushnil(L);
        while(lua_next(L, -2))
        {
            // 栈状态:key : -2  value : -1
            // do something 
            lua_pop(L, 1);
        }

lua_next 先弹出一个值, 再放一对pair 到栈上, 参数 index 是表的位置

调用后: -1:value -2:key

因为会先弹出一个值,需要先pushnil ,用于弹出。

循环内 pop 后,将value弹出, 下次调用 lua_next时,将 key 弹出,再压入一对 kv

网上讲那么复杂。

相关推荐
比特森林探险记21 小时前
Nginx+Lua动态加载黑名单
nginx·junit·lua
烛阴1 天前
为什么游戏开发者都爱 Lua?零基础快速上手指南
前端·lua
嵌入式-老费2 天前
Easyx图形库应用(用lua开发图形界面)
开发语言·lua
ellis19702 天前
Lua协程coroutine库用法
开发语言·lua
〆WangBenYan゜2 天前
postman 调用接口设置全局变量
测试工具·lua·postman
嵌入式-老费2 天前
Easyx图形库应用(和lua结合使用)
开发语言·lua
程序员大辉2 天前
接口调试利器,Postman免安装,免登陆
测试工具·lua·postman
天庭鸡腿哥2 天前
可能最后一个版本,作者不更新了!
eclipse·maven·lua·visual studio
FFZero13 天前
【C++/Lua联合开发】 (三) C++调用Lua
c++·junit·lua
疯狂吧小飞牛4 天前
Lua C API 中的 lua_rawseti 与 lua_rawgeti 介绍
c语言·开发语言·lua