Go には組み込みの 複数の戻り値 のサポートがあります。この機能は Go らしいイディオムとして、たとえば関数から結果とエラー値の両方を返すために頻繁に使用されます。
package main
import "fmt"
この関数シグネチャの (int, int) は関数が 2 つの int を返すことを示します。
(int, int)
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 関数のもう一つの素晴らしい機能です。次はこれを見ていきます。
次の例: 可変長引数の関数.
by Mark McGranaghan and Eli Bendersky | ソース | ライセンス