bam6o0の記憶域

忘備録になればいいな

Go言語の勉強記録4bit

演算子

C言語とほとんど一緒のため割愛

  • シフト演算子以外は演算対象の2つの型は一致しなければならない
  • 型を宣言しなかった定数constの場合、使用する箇所の文脈によって型がきまる。
  • インクリメント++とデクリメント--はGoでは演算子ではなく文
  • 文は単独でしか使えず、代入文や関数呼び出しパラメータに使用できない。

代入

C言語とほとんど一緒

  • ,で区切れば複数に代入可能
  • Goの関数は複数の値を戻り値として返せるため、複数の戻り値を受けるときも,で区切る
a = 12345
b = 3*2
c,d = 3.14,"abc"
e,f = fn()

ブランク識別子

  • _アンダースコアはブランク識別子という特殊な識別子として認識される。
  • 変数同様に値を代入できるが、そこから値を取得できない。
  • Goは使用しない変数を宣言するとコンパイルエラー
  • 回避するためにブランク識別子を使う。
  • 特に関数の戻り値の1つを使わない時に有用
//戻り値2つだがa,bともにプログラム上で使わないとエラー
a,b = fn()
//aのみ使う場合はブランク識別子に2つめの戻り値を代入する。
a,_ = fn()