/*
   go可变长参数列表
   支持可变长参数列表的函数可以支持任意个传入参数
*/

package main

import (
    "fmt"
)

func sum(nums ...int) {
    fmt.Print(nums, " ")

    total := 0
    for _, num := range nums {
        total += num
    }
}

func main() {
    sum(1, 2)
    sum(1, 2, 3)

    nums := []int{1, 3, 5}
    sum(nums...)
}

/*
  需要注意的是
  可变长参数应该是改函数定义最右边的参数 即最后一个参数
*/