Go by Example: 複数の戻り値

Go には組み込みの 複数の戻り値 のサポートがあります。この機能は Go らしいイディオムとして、たとえば関数から結果とエラー値の両方を返すために頻繁に使用されます。

package main
import "fmt"

この関数シグネチャの (int, int) は関数が 2 つの int を返すことを示します。

func vals() (int, int) {
    return 3, 7
}
func main() {

ここで、複数の代入を使用してコールから 2 つの異なる戻り値を使用します。

    a, b := vals()
    fmt.Println(a)
    fmt.Println(b)

戻り値のサブセットのみが必要な場合は、空白識別子 _ を使用します。

    _, c := vals()
    fmt.Println(c)
}
$ go run multiple-return-values.go
3
7
7

可変数の引数を受け入れることは、Go 関数のもう一つの素晴らしい機能です。次はこれを見ていきます。

次の例: 可変長引数の関数.