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

网上讲那么复杂。

相关推荐
wh_xia_jun21 小时前
Apifox 测试项目实操1
开发语言·lua
颖火虫盟主1 天前
Lua 协程:从 API 到底层原理再到 Skynet 架构的完整学习路径
学习·架构·lua
tongluowan0071 天前
Redisson的参数及工作原理
java·redis·lua·分布式锁
上海合宙LuatOS2 天前
Air8000低功耗指南
开发语言·物联网·php·lua
wh_xia_jun2 天前
HttpRunner 编写测试用例
开发语言·lua
乐于分享的阿乐2 天前
【2026最新】Postman新旧版本下载安装+免登录 保姆级教程
测试工具·lua·postman
彭于晏Yan3 天前
自定义注解+Lua脚本实现限流
java·spring boot·后端·lua
测试那点事儿3 天前
API 鉴权三种常用做法:用生活例子讲明白
开发语言·lua·生活
灰子学技术4 天前
Envoy Lua 过滤器功能实现分析
开发语言·lua
小波a4 天前
Dump Lua
开发语言·lua