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

网上讲那么复杂。

相关推荐
zz0723203 分钟前
Lua 脚本
lua·脚本语言·redis+lua
wapicn992 天前
API接口调试笔记:从注册到第一个数据返回,全流程详解
java·开发语言·python·lua
kebeiovo3 天前
C++与 Lua的交互
c++·lua
wh_xia_jun4 天前
Apifox 测试项目实操1
开发语言·lua
颖火虫盟主4 天前
Lua 协程:从 API 到底层原理再到 Skynet 架构的完整学习路径
学习·架构·lua
tongluowan0074 天前
Redisson的参数及工作原理
java·redis·lua·分布式锁
上海合宙LuatOS5 天前
Air8000低功耗指南
开发语言·物联网·php·lua
wh_xia_jun5 天前
HttpRunner 编写测试用例
开发语言·lua
乐于分享的阿乐5 天前
【2026最新】Postman新旧版本下载安装+免登录 保姆级教程
测试工具·lua·postman
彭于晏Yan6 天前
自定义注解+Lua脚本实现限流
java·spring boot·后端·lua