【发布时间】:2014-11-23 02:08:33
【问题描述】:
我试图在 Lua 中将几个数组组合成一个单一的数组。
当我运行此脚本时,由于arg.n = nil 值而出现错误,arg.n 不应该将参数数量发送到函数中,需要循环遍历每个
有什么建议吗?
function array_concat(...)
-- Combine Multiple Arrays
-- Usage: combined = array_concat(T1, T2, T3 ....)
local t = {}
-- [ERROR] 10:26:35: line 49: attempt to get length of global 'arg' (a nil value)
print (arg.n)
-- arg.n is nil why ?
for i = 1, arg.n do
local array = arg[i]
if (type(array) == "table") then
for j = 1, #array do
t[#t+1] = array[j]
end
else
t[#t+1] = array
end
end
return t
end
local Array1 = {1,2}
local Array2 = {3,4}
local Combine = array_concat(Array1, Array2)
for k, v in pairs( Combine ) do
print(k, v)
end
【问题讨论】:
标签: lua lua-table variadic-functions