1、不定參數的傳遞
示例1:
package main //必須有一個main包 import "fmt" func myfunc(tmp ...int) { for _, data := range tmp { fmt.Println("data = ", data) } } func test(args ...int) { myfunc(args...) } func main() { test(1, 2, 3, 4) }
執行結果:
data = 1 data = 2 data = 3 data = 4
示例2:
package main //必須有一個main包 import "fmt" func myfunc2(tmp ...int) { for _, data := range tmp { fmt.Println("data = ", data) } } func test(args ...int) { // myfunc2(args[:2]...) //args[0]~args[2](不包括數字args[2]),傳遞過去 myfunc2(args[2:]...) //從args[2]開始(包括本身),把后面所有元素傳遞過去 } func main() { test(1, 2, 3, 4) }
執行結果:
data = 1 //args[:2] data = 2 ----------------- data = 3 //args[2:] data = 4