Variadic functions는 인자 갯수에 상관없이 호출될 수 있습니다. 예를 들면, |
|
package main
|
|
import "fmt"
|
|
다음 함수는 |
func sum(nums ...int) {
fmt.Print(nums, " ")
total := 0
for _, num := range nums {
total += num
}
fmt.Println(total)
}
|
func main() {
|
|
가변 함수는 일반적인 방법인 개별적인 인자들로 호출할 수 있습니다. |
sum(1, 2)
sum(1, 2, 3)
|
만약 값들이 이미 슬라이스에 들어 있다면, 다음과 같이 |
nums := []int{1, 2, 3, 4}
sum(nums...)
}
|
$ go run variadic-functions.go
[1 2] 3
[1 2 3] 6
[1 2 3 4] 10
|
|
Go 함수의 또 다른 핵심 기능은 다음장에서 살펴볼 클로저를 구성할 수 있는 기능입니다. |
다음 예제: 클로저.