Lua 函数回调技巧

Posted Linux大师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lua 函数回调技巧相关的知识,希望对你有一定的参考价值。

技巧1:

local a = {};function b() print("Hello World")enda["sell"] = {callFunc =b}a["sell"].callFunc()

技巧2:

使用lua 自带的 unpack :

解释:把一直数组(只有连续数字下标的 table)展开成一串返回值,但是对用字符串或别的东西做 key 的 table 无能为力。

function unpackex(tbl, args) local ret = {} for _,v in ipairs(args) do table.insert(ret, tbl[v]) end return unpack(ret)endprint(unpackex({one = {"one", "two", "three"}, two = "T" , three = "TH"},{"one", "two", "three"}))

输出:>>  table: 00ABC2D0TTH


以上是关于Lua 函数回调技巧的主要内容,如果未能解决你的问题,请参考以下文章

LUA教程2-回调函数使用说明

撰写 C 函数的技巧

快速掌握Lua 5.3 —— 编写提供给Lua使用的C库函数的技巧

快速掌握Lua 5.3 —— 编写提供给Lua使用的C库函数的技巧

十分钟学会Lua三:编程技巧之闭包与模式匹配

如何在Lua脚本中响应事件回调