A Tour of Go の自分用リファレンスメモ
Exported names
外部のパッケージから参照できるオブジェクトは先頭が大文字から始まる。
例) PrintlnとPi
fmt.Println(math.Pi)
Functions
関数の定義
func add(x int, y int) int { return x + y } add(42, 13)
引数型の省略
同じ型の引数が続く場合は、最後のみ型を記述して省略することができる
func add(x, y int) int { return x + y }
Multiple results
関数は複数の戻り値を返すことができる。
func swap(x, y string) (string, string) { return y, x } a, b := swap("hello", "world")
Named return values
名前をつけた戻り値の変数を使うと、 return ステートメントに何も書かずに戻すことができる。
func split(sum int) (x, y int) { x = sum * 4 / 9 y = sum - x return } // 7 10 が出力 fmt.Println(split(17))
Variables
宣言。関数の引数リストと同様に、複数の同じ型の変数には最後に型を書くことができる。
var c, python, java bool
Variables with initializers
初期化も同時に行う場合は型宣言を省略できる。
違う型の変数を同時に初期化できる。
var c, python, java = true, false, "no!"
Short variable declarations
:= 演算子で初期化することでvar 宣言を省略できる。但し関数内のみでの使用に限る。
func main() { c, python, java := true, false, "no!" fmt.Println(c, python, java) }
Constants
定数はconst
キーワードを使って定義する。
const Truth = true const ( Big = 1 << 100 Small = Big >> 99 )
リンク
リンク