Lua中如何将函数的所有返回值存储到一个变量中?

我有一个

function foo()
    return a, b
end
x, y = foo() -- x == a, y == b
z = foo() -- z == a

有没有更简单的方法将ab(以及函数中的任何更多变量)一起传输到z中作为数组?

使用 z = {} 初始化 z 不起作用,因为它只将其重新定义为 foo() 的第一个结果。

点赞
用户6020403
用户6020403

如何:

--定义函数
function foo()
     returnone”,“twoend
--将z设置为foo()返回值的表。第一个返回值将是z [1],第二个将是z [2],依此类推。
z = {foo()}
--打印出来
for kv in pairszdo
     printkvend

应该得到

1一
2二

这是你要找的类型吗?

2017-12-26 23:13:35