Я этот тест функция, которая просто печатает значения, переданные емуLua распаковывать() Мессинг аргументы
function test1(...)
for k, v in ipairs(arg) do
print(v)
end
end
function test2(...)
for k, v in pairs(arg) do
print(v)
end
end
-- GOOD behavior
test1(1, 2, 3, 4) -- produces 1 2 3 4
test2(1, 2, 3, 4) -- produces 1 2 3 4
-- BAD behavior
test1(unpack({1,2}), 3, 4) -- produces 1 3 4
test2(unpack({1,2}), 3, 4) -- produces 1 3 4 3
Может кто-то объяснить это поведение для меня?
Спасибо. Это то, что я искал :) –
Для любопытных: [где все может иметь список выражений в Lua?] (Http://stackoverflow.com/a/31782250/183120) – legends2k