【Golang】関数
Golangの基礎学習〜Webアプリケーション作成までの学習を終えたので、復習を兼ねてまとめていく。 基礎〜応用まで。
package main
//関数
import "fmt"
/*
//定義
func 関数名(引数 引数の型)戻り値型{
}
*/
//funcで関数宣言(引数の型)(返り値の型)
//同じ型の場合(x, y int)と省略できる。通常は(x int,y int)
//return で返す場合は返り値の型が必要。
func add(x, y int) (int, int) {
return x + y, x - y
}
//ネームドリターンバリュー
//引数、返り値を見ただけで、何をするのかが分かるので推奨。
//reslut int で変数名と返り値の型指定
//最初に返り値を指定しているので、returnは省略できる
func cal(price, item int) (result int) {
//返り値で指定しているので、:=にしなくてもいい
result = price * item
return
}
//戻り値のない関数
func noreturn(){
fmt.Println("No Return")
return
}
func convert(price int) float64 {
return float64(price)
}
func main() {
r1, r2 := add(10, 20)
fmt.Println(r1, r2)
//戻り値の破棄 _
//r1, _ := add(10, 20)
r3 := cal(100, 2)
fmt.Println(r3)
noreturn()
a := convert(1)
fmt.Println(a)
//無名関数
//オブジェクトに関数を格納
f := func(x int) {
fmt.Println("inner func", x)
}
f(1)
//簡易的な関数ならそのまま実行する方法
func(x int) {
fmt.Println("inner func", x)
}(1)
}