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 の可変引数関数は任意の数の引数をどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。