在Lua函数中引入的(...)版本作为参数?

时间:2013-06-18 18:32:05

标签: lua parameter-passing argument-passing

这是我能想象到的最简单的例子:

function NewPrint(...)
    print("printed:", ...)
end

NewPrint("Hi")

请注意,我实际上没有做过Lua一段时间,我可能错过了一些语法。

2 个答案:

答案 0 :(得分:5)

根据Lua.org documentation,它是Lua 5.1。

  

Lua 5.1于2006年2月21日发布。它的主要新功能是新的模块系统,增量垃圾收集, varargs的新机制,长字符串和注释的新语法,mod和length运算符,所有类型的元表,通过luaconf.h的新配置方案,以及完全可重入的解析器。

答案 1 :(得分:2)

函数定义中的语法已在 Lua 5.0(manual Lua 2.5中引入(感谢Luiz纠正我),但它需要使用{{1当你想访问那些varargs时表。这已在Lua 5.1中修复,允许使用arg表示法来定义和访问varargs。