Go 言語の関数は可変長パラメーターをサポートしており、可変長パラメーターは同じ型のスライスに収集されます。可変長パラメータはパラメータ リストの最後のパラメータである必要があり、型はコンパイラによって推論され、任意の型にすることができます。
Go 言語関数での可変長パラメーターの実装
Go 言語の関数は可変長パラメーターをサポートしています。つまり、可変数のパラメーターを受け入れることができます。これらのパラメーターは、可変個引数パラメーターまたは可変個引数パラメーターと呼ばれます。
構文
可変長パラメータの構文は次のとおりです:
func functionName(param1 type, param2 type, ...paramN type) returnType
ここで:
param1
と param2
の型は type< /code> 通常のパラメータ <code>param1
和 param2
是类型为 type
的常规参数...paramN
是变长参数,类型为 type
returnType
...paramN
は可変長パラメータで、型は type
ですreturnType
は戻り値です関数の型
実装
Go言語の変数パラメータは実際にはスライスを使用して実装されます。関数が呼び出されると、可変引数は、要素の型が可変引数と同じ型であるスライスに収集されます。
実際的なケース
以下は、可変長パラメーターの使用方法を示す実際的なケースです:
package main import "fmt" // sum 函数使用变长参数来计算参数的总和 func sum(arr ...int) int { sum := 0 for _, v := range arr { sum += v } return sum } func main() { // 使用变长参数调用 sum 函数 result := sum(1, 2, 3, 4, 5) fmt.Println(result) // 输出:15 }
以上がgolang 関数の可変長パラメーターはどのように実装されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。