以下の内容はhttps://tech-up.hatenablog.com/entry/2018/11/26/125954より取得しました。


可変長引数【Go】

定義の際には引数の数を決めずに、
実行時に委ねる方法です。型の前に「...」を記述します。

func p(params ...int) {
    fmt.Println(params)
}

func main() {
    p(1, 2, 3)    // [1 2 3]
}

可変長引数は、関数の内部でスライスとして扱われます。
ですので、実行時に引数を渡さない場合は、空のスライスで実行されます。

また、次の様にfor文を用いて展開することも可能です。

func p(params ...int) {
    for _, param := range params{    // indexは使用しないため破棄
        fmt.Println(param)
    }
}

func main() {
    p(1, 2, 3)
}


引数にスライスを使用することもできます。
その際には、実行時に変数またはスライスの直後に「...」を記述します。
要素を展開する、という意味です。

func main() {
    p([]int{4, 5, 6, 7}...)
}





以上の内容はhttps://tech-up.hatenablog.com/entry/2018/11/26/125954より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14