2017-08-26 109 views
3

我有一个函数(即我不能改变)返回多个值:Lua中返回多个值作为参数

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

和另一个函数(即我不能改变),把多个参数:

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

有没有办法做到:

f2(f1(), c) 

,并有X一个ÿbŽÇ

+0

不好意思,它不起作用(我正在使用love2D) –

回答

1

你不能做到这一点的一条线,因为f2(f1(),c)调整由f1返回结果一个单一的价值。

2

你可以使用中间结果

local a, b = f1() 
f2(a, b, c) 
+0

它的工作原理,但我想在一行中做到这一点 –

0

您可以使用一个表作为帮助:

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

它的工作原理,但我想在一行中做到这一点 –