>백엔드 개발 >Golang >Go의 Variadic 함수는 임의 개수의 인수를 어떻게 처리합니까?

Go의 Variadic 함수는 임의 개수의 인수를 어떻게 처리합니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-01 10:24:15335검색

How Do Variadic Functions in Go Handle an Arbitrary Number of Arguments?

Go의 가변 함수

Golang은 가변 함수라는 고유한 기능을 제공합니다. 이를 통해 임의 개수의 인수를 허용하는 함수를 정의할 수 있습니다. 이는 다양한 입력으로 함수를 처리하는 유연한 방법을 제공합니다.

귀하의 예에서는 임의 개수의 정수를 취해 그 합계를 반환하는 함수 Add를 정의하려고 합니다. Go에서는 ...int 구문을 사용하여 이를 달성할 수 있습니다. 여기서 줄임표(...)는 가변 개수의 인수를 나타냅니다. 다음은 수정된 버전의 예입니다.

package main

import "fmt"

func Add(num1 ...int) int {
    sum := 0
    for _, v := range num1 {
        sum += v
    }
    return sum
}

func main() {
    fmt.Println("Hello, playground")
    fmt.Println(Add(1, 3, 4, 5))
}

사양에서 언급한 대로:

Greeting 내에서

func Greeting(prefix string, who ...string)
Greeting("hello:", "Joe", "Anna", "Eileen")

함수 및 호출이 제공됩니다. 값은 []string{"Joe", "Anna", "Eileen"}

따라서 Add(1, 3, 4, 5)를 호출할 때 num1 매개변수는 [1, 3, 4, 5] 값을 포함하는 정수 조각이 됩니다. 그런 다음 이 조각을 반복하여 입력 숫자의 합을 계산할 수 있습니다.

위 내용은 Go의 Variadic 함수는 임의 개수의 인수를 어떻게 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.