LoginSignup
0
0

More than 3 years have passed since last update.

【Golang】関数

Posted at

【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)
}

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0