Lua返回多个值作为参数

时间:2017-08-26 08:39:00

标签: function lua return arguments multiple-arguments

我有一个函数(我无法更改)返回多个值:

function f1()
    ...
    return a, b
end

和另一个采用多个参数的函数(我无法改变):

function f2(x, y, z)
    ...
end

有办法吗?

f2(f1(), c)

x a y b z c

3 个答案:

答案 0 :(得分:2)

您可以使用中间结果

{{1}}

答案 1 :(得分:2)

您不能在一行中执行此操作,因为f2(f1(),c)会将f1返回的结果调整为单个值。

答案 2 :(得分:1)

您可以将表用作帮助程序:

tbl={f1()}
tbl[3]=c
f2(unpack(tbl))