Variable Functions
- 可變參數函數,傳入參數的數量沒有限制
比如fmt.Print就是一個variable function
package main
import "fmt"
func sum(nums ...int) {
fmt.Print(nums, " ")
total := 0
for _, num := range nums {
total += num
}
fmt.Println("total =",total)
}
func main() {
//Variadic functions can be called in the usual way with individual arguments.
sum(1, 2)
sum(1, 2, 3)
//也可以這麼寫
//If you already have multiple args in a slice, apply them to a variadic function using func(slice...) like this.
nums := []int{1, 2, 3, 4}
sum(nums...)
}
Output:
[1 2] total = 3
[1 2 3] total = 6
[1 2 3 4] total = 10