Edited at

はじめてのGo言語 3.関数

More than 3 years have passed since last update.

いままでの記事はこちら

はじめてのGo言語 2.変数

はじめてのGo言語 1.環境構築


関数の使い方

関数はfuncで記述ができる。

基本は以下のような構成になってます。


main.go

func 関数名(変数)(戻り値){

//処理
}

以下がその例です。

型の指定は引数は変数名のあとにきます。

そして戻り値の型も指定してあげる必要があります。


main.go

package main

import (
"fmt"
)

func add(x int, y int) int {
return x + y
}

func main() {
fmt.Println(add(1, 2))
}


引数内の型が同じであれば型宣言を一部省略できます。


main.go

package main

import (
"fmt"
)

func add(x, y int) int {
return x + y
}

func main() {
fmt.Println(add(1, 2)) //3
}



戻り値について

Goでは複数の戻り値を返すことができます。

以下のようにカンマで区切れば複数で返すことが可能です。


main.go

package main

import (
"fmt"
)

func swap(x, y int) (int, int) {
return y, x
}

func main() {
fmt.Println(swap(1, 2)) //2 1
}


戻り値は先に指定しておくこともできます。

以下のコードでは最終的にxyzの値が帰ってきます。


main.go

package main

import (
"fmt"
)

func pow(val int) (x, y, z int) {
x = val * val
y = x * val
z = y * val
return
}

func main() {
fmt.Println(pow(2)) // 4 8 16
}