2.2 変数の宣言
変数を宣言する方法が数多く用意されている。
varを使う
型と初期値を指定する
code:go
var x int = 10
初期値を指定する
code:go
var x = 10
整数リテラルのデフォルトの型は、intなので左辺のintを省略できる
ゼロ値を代入する
code:go
var x int
多重代入する
code:go
var x, y int = 10, 20
宣言リストにまとめる
code:go
var (
x int
y = 20
z int= 30
d, e = 40, "hello"
f, g string
)
演算子:=を使う。ただし関数内でのみ利用できる
code:go
x := 10 // var x = 10 と同じ
どの形式を使うか悩みがちだが、自分の意図を的確に表す形式を選べば良い。
関数内でもっともよく使われるのは:=。
ただし関数内でも:=を避けることがある。
ゼロ値に初期化する場合は
code:go
var x int
型が指定されていないリテラルを変数に代入する場合。これはイディオム
code:go
var x byte = 20
TODO:既存の変数に値を代入する場合
code:go
x := 10
x, y := 30, "hello"
またvarや:=による多重代入は、複数の値を返す関数でしか使わないこと。これもイディオム。