This question already has answers here:
Does Golang support variadic function?

(3个答案)


2年前关闭。



func foo(x... int) {

//Do something with the arguments.

}

函数foo接受任意数量的特定类型的参数。如何在函数中读取这些参数?

当将一个int的 slice 传递给函数foo时,但如果参数没有作为int的 slice 传递,则不能这样做。

最佳答案

当将一个int的 slice 传递给函数foo时,但如果参数没有作为int的 slice 传递,则不能这样做。

在两种情况下,都可以将“x”用作 slice 。无论调用该函数的方式如何,以下内容均应起作用:

for i, v := range x {
    // ...
}

10-07 14:24
查看更多