Go の可変引数関数: "...Type" を理解する
Go 言語では、可変長の引数リストを使用して関数を定義できます、可変個引数関数として知られています。可変長関数の構文は、最後のパラメーターの型に省略記号 (...) を追加します。
構文:
func functionName(param1, param2, ..., paramN ...Type)
ここで:
例:
builtin.go のコードは、コンパイルされたコードではなくドキュメントとして機能します。次の行:
func append(slice []Type, elems ...Type) []Type
は、append と呼ばれる可変個引数関数を示しています。この関数は 2 つ以上のパラメータを受け入れることができます。最初のパラメータは []Type 型のスライスで、2 番目は Type の任意の数の要素を受け入れることができる可変個引数パラメータです。
Usage:
コードでは、他の関数と同じ構文で append 関数を呼び出すことができます。
s3 := append(s1, s2...)
この例では、append 関数は 2 つのスライス s1 と s2 を連結します。これにより、新しいスライス s3 が作成されます。 s2 で使用される省略記号は、s2 のすべての要素が s3 にコピーされる必要があることを示します。
補足:
以上がGo での可変個引数関数の仕組み: "..." 構文の開梱?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。