サンプルで学ぶ Go 言語:Functions

Go において関数は中心的な存在だ。 例を見ながら関数について学ぼう。

package main
import "fmt"

これは2つの int 型の値を受け取り、その和を表す int 型の値を返す関数である。

func plus(a int, b int) int {

Go では明示的な return 文を書く必要がある。 すなわち、return を書かなければ、最後の式の値を自動で返しはしない。

    return a + b
}

同じ型のパラメータを続けて複数取るとき、それらの型名はそのうち最後のものの後にだけ書けばよい。

func plusPlus(a, b, c int) int {
    return a + b + c
}
func main() {

name(args) と書けば関数を呼べる

    res := plus(1, 2)
    fmt.Println("1+2 =", res)
    res = plusPlus(1, 2, 3)
    fmt.Println("1+2+3 =", res)
}
$ go run functions.go 
1+2 = 3
1+2+3 = 6

Go の関数の機能は他にもある。 そのうちの1つ、多値の返り値を次の例で紹介する。

次の例:Multiple Return Values