Lua之unpack函数

来源:互联网 发布:剑网3笔记本优化版 编辑:程序博客网 时间:2024/06/06 16:34

unpack函数简介

函数多值返回的特殊函数 unpack,接受一个数组作为输入参数,返回数组的所有元 素。unpack 被用来实现范型调用机制,在 C 语言中可以使用函数指针调用可变的函数, 可以声明参数可变的函数,但不能两者同时可变。

使用方法

在 Lua 中如果你想调用可变参数的可变函数只需要这样:

  • 代码
f = string.find --类似函数指针a = {"hello","ll"} --参数数组print(f(unpack(a)));
  • 结果
    这里写图片描述

自己用lua实现unpack

function unpack(t,i)  i = i or 1  if(t[i]) then   return t[i],unpack(t,i+1)   endend

综合上个例子,参数t为{“hello”,”ll”},参数i为nil

….