如何将函数的所有结果存储到Lua中的单个变量中?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将函数的所有结果存储到Lua中的单个变量中?相关的知识,希望对你有一定的参考价值。
我有
function foo()
return a, b
end
x, y = foo() -- x == a, y == b
z = foo() -- z == a
有没有更简单的方法将a
和b
(以及函数中的任何更多变量)转换为z
作为数组?
用z
初始化z = {}
不起作用,因为它只是将它重新定义为foo()
的第一个结果。
答案
怎么样:
-- define the function
function foo()
return "one", "two"
end
-- set z to a table of the return values of foo(). The first return
-- value will be z[1], the second one z[2], and so on.
z = {foo()}
-- print it out
for k,v in pairs(z) do
print(k, v)
end
应得
1 one
2 two
这是你要找的东西吗?
以上是关于如何将函数的所有结果存储到Lua中的单个变量中?的主要内容,如果未能解决你的问题,请参考以下文章