可变参数函数。可以用任意数量的参数调用。例如,fmt.Println
是一个常见的变参函数。
Example:
package main import "fmt" //...int将参数指定为不定个数。 func example_func(nums ...int) int{ //nums []类型 fmt.Println(nums) sum := 0 for _, num := range nums{ sum += num } return sum } func main(){ ret := example_func(1, 3) fmt.Println(ret) t := example_func(1, 2, 3, 4) fmt.Println(t) ns := []int{1, 2, 5} //...是golang语法糖,通过...将数组打散1, 2, 5 r := example_func(ns...) fmt.Println(r) }
Result:
$ go run example.go [1 3] 4 [1 2 3 4] 10 [1 2 5] 8