Updated:

less than 1 minute read

개요

  • 임의 개수의 인자를 받을 수 있는 함수
  • 타입 앞에 생략 부호(...)를 붙여서 선언
  • 슬라이스 전달 시 뒤에 생략 부호(...)를 붙여서 전달


예제

  • 코드
     package main
        
     import "fmt"
        
     func variadic(args ...int) {
     	fmt.Println(len(args), args)
        
     	for index, value := range args {
     		println(index, value, args[index])
     	}
     }
        
     func main() {
     	variadic()
        
     	println("------")
        
     	variadic(1)
        
     	println("------")
        
     	variadic(1, 2, 3)
        
     	println("------")
        
     	variadic([]int{1, 2, 3}...)
     }
    
  • 실행 결과
     0 []
     ------
     1 [1]
     0 1 1
     ------
     3 [1 2 3]
     0 1 1
     1 2 2
     2 3 3
     ------
     3 [1 2 3]
     0 1 1
     1 2 2
     2 3 3