go語言基礎之不定參數的傳遞


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

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM