2022年1月20日木曜日

Goの関数の宣言と使い方

今回は、Goの関数について書きます。

関数が使えるようになるとスッキリしたコードが書けるようになります。

言葉で説明するよりも、コードを見た方が分かりやすいと思うので、以下のコードを書いて実行してみましょう。

3と5の2つを引数として渡して、その合計を表示します。

package main

import "fmt"

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

func main() {
	answer := add_num(3, 5)
	fmt.Println(answer)
}

これを実行すると3+5で8と表示されます。

まず、関数を宣言するためにfuncとし、その後ろに好きな関数名を書きます。

関数名は自由に書く事ができますが、関数名を見たらすぐにその関数が何をするものなのかというのが分かるような名前にするのが良いです。

関数名の後ろに()を書き、その中に引数を型と合わせて書きます。

さらに、その後ろに返ってくるものの型を書きます。

宣言した関数を使う時には、関数名の後ろに()を付けて、その括弧の中に引数をカンマで区切って書きます。

最初は、型を書いたりと少しややこしく感じるかもしれませんが、慣れてくるとそんなに難しくありません。

次に、変数に関数を入れるというやり方で書いてみましょう。

これも先にコードを書いて実行して下さい。

package main

import "fmt"

func main() {
	f := func(x int, y int) {
		fmt.Println(x + y)
	}
	f(3, 5)
}

これもさっきと同じで8と表示されます。

さっきと違うのは、関数名を書いて宣言するのではなく、関数をそのまま変数に代入しているところです。

最初は、このような書き方は使わないと思いますが、一応覚えておきましょう。

最後に、もっとシンプルな書き方です。

package main

import "fmt"

func main() {
	func(x int, y int) {
		fmt.Println(x + y)
	}(3, 5)
}

これを実行すれば分かると思うのですが、やはり8と表示されます。

関数を変数名に代入すらせずに、そのまま実行しているのです。

Goの関数は書き方が複数あるので、最初は難しく感じるかもしれません。

慣れるまでは、基本的な書き方で十分なので、慣れたら別の書き方も練習していきましょう。

0 件のコメント:

コメントを投稿

GAEのGo言語でuser APIが機能しない件

Goを使ってGAEのアプリケーションを作り始めたけど、管理画面を作る段階でいきなり行き詰まった。 user APIがあるんだけど、それがどうしても機能してくれなくて、LoginURLやLogoutURLが返ってこないんです。 検索して出てくるコードのまま書いてるんだけど、全...