如何在lua 5.2中检索变量参数

时间:2016-03-23 07:30:38

标签: lua

参考页面都说

之类的东西
function this(...)
end

然而,当我尝试应用假定的arg变量时,我得到的只是一个零引用。我为捕获参数所做的任何尝试都会产生一个nil表。我试过强制local tab = {...}并仍然得到零引用。我设法捕获参数的最接近的是select("#",...),它只返回参数的数量。每当我尝试捕获这个外部参数声明时,我只会得到另一个错误......

我一直在彻底调查这个没有用...任何方式我都可以在没有强行传递一张桌子的情况下完成这个任务?

1 个答案:

答案 0 :(得分:4)

arg参数仅适用于Lua 5.0。从Lua 5.1开始,使用了vararg表达式...

试试这个:

function foo(...)
    for k, v in ipairs{...} do
        print(k, v)
    end
end

foo('hello', 'world')