Lua中用…表示函数的可变参数,如
function fun1( ... )
local tab = {...} -- 把可变参数存入到table表中
for k,v in pairs(tab) do
print(k,v)
end
end
Lua中的select方法,用法:select(index,…)
- index 类型:整型,从1开始,表示起点(可变参数),…表示可变参数
- select(index,…)返回从起点index到结束的可变参数;
function fun1( ... )
a = select(3, ...)
print("a ======== ",a)
print(select(3, ...))
end
fun1(1,2,3,4,5)
-- 输出:
a ======== 3
3 4 5
从上面的例子可以看出:
- select(3,…)就是表示从…中第3个数到最后一个的多个数,不是列表或者别的什么类型的
- a = select(3, …),取第一个数,所以a = 3;
select(’#’, …) --返回可变参数的数量
function fun1( ... )
len = select("#",...)
print("len ======== ",len)
end
fun1(1,2,3,4,5)
--输出:
len ======== 5