我正在尝试编写一个函数,它应该允许接受可变数量的参数。然而,在Julia中如何实现这一点并不太清楚。
julia> varargs(a,b,c...) = (a,b,c)
varargs (generic function with 1 method)
julia> varargs(5, 10)
(5, 10, ())
julia> varargs(3,4,5)
(3, 4, (5,))
julia> varargs(10, 20, 30, 40, 50, 60, 70, 80)
(10, 20, (30, 40, 50, 60, 70, 80))
julia> d = (2,3,4,5,6,7,8,9)
(2, 3, 4, 5, 6, 7, 8, 9)
julia> varargs(1,2,d)
(1, 2, ((2, 3, 4, 5, 6, 7, 8, 9),))
再强调一下,在我们定义varargs
函数并写下c...
时,关键的魔法就发生了。这种符号使得可变大小参数这个概念得以实现。