当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Lua table.pack()用法及代码示例


当我们想返回一个表作为传递给函数的多个值的结果时,我们使用table.pack()函数。这table.pack()函数是一个可变参数函数。

用法

table.pack(x,y,z,....)

示例

这个table.pack()函数提供了一个表格,其中包含作为参数传递给它的所有值,请考虑下面显示的示例 -

a = table.pack(1,2,3)
print(a)
print(a.n)

在上面的例子中,我们传递了三个数字给table.pack()函数作为参数,然后我们打印返回值,即,它将保存包含我们作为参数传递的值的表的地址,最后我们打印表中存在的元素数量n 关键字的帮助。

输出

table:0x13998b0
3

应该注意的是,当我们将值作为参数传递时,会在表中添加一个附加字段,通常是这样的 -

{n = “number of elements in table”}

然后,我们也可以使用这个 n。现在让我们使用泛型for循环打印从表中返回的所有元素table.pack()函数。

示例

考虑下面显示的例子 -

local a = table.pack(10,20,30)
for _, v in pairs(a) do print(v) end

输出

10
20
30
3

如果我们仔细查看输出,我们可以清楚地看到最后一个输出编号本质上是n这是 Lua 添加到表中的。

我们还可以按照下面显示的代码检查返回的表的返回类型 -

print(type(table.pack(1,2,3)))

输出

table

相关用法


注:本文由纯净天空筛选整理自Mukul Latiyan大神的英文原创作品 table.pack() function in Lua programming。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。