公式サイトの日本語訳ページにも出ているように Go でも複数の戻り値を返すことはできます。
関数の定義側は戻り値を複数指定し、 return で複数返します。
lang
1func multiReturn(a int, b int) (int, int) {
2 return a+b, a*b
3}
使う側はカンマで複数してして受け取ります。
lang
1func main() {
2 ad, pr := multiReturn(2, 3)
3 fmt.Printf("Add = %d, Product = %d\n", ad, pr)
4}
Go ではファイルのオープン時などエラー情報を複数の戻り値で返すので、わりとよく使うのではないかと思います。
lang
1f, err := os.Open("foo.txt")
2if err != nil {
3 return err
4}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/09/10 09:02