Go by Example: Variadic Functions
可变参数函数在调用时可以接收任意个数的参数。例如,fmt.Println是一个常见的可变参数函数。
variadic-
function
.go
package main import "fmt" func sum(nums ... int) { //这个函数将使用任意个数的int做为参数 fmt.Print(nums, "") total := 0 for _,num := range nums { total += num } fmt.Println(total) } func main() { sum(1, 2) //可变参数函数通常使用多个参数做为参数被调用 sum(1, 2, 3) nums := []int{1, 2, 3, 4} //如果你已经有了一个多参数的切片 //那么可以使用func(slice...)来调用使用。如下: sum(nums ...) }
运行结果:
$ go run variadic-function.go [1 2]3 [1 2 3]6 [1 2 3 4]10
Go语言的函数的另外一方面是它形成的闭包。下节学习。
转载于:https://blog.51cto.com/sanguonaigao/1440025