1
2

More than 1 year has passed since last update.

Go 基本

Last updated at Posted at 2023-02-04

Goのプログラムは、パッケージ( package )で構成されます。
プログラムは main パッケージから開始されます。

規約で、パッケージ名はインポートパスの最後の要素と同じ名前になります。 例えば、インポートパスが "math/rand" のパッケージは、 package rand ステートメントで始まるファイル群で構成します。

Goでは、最初の文字が大文字で始まる名前は、外部のパッケージから参照できるエクスポート(公開)された名前( exported name )です。

関数は、0個以上の引数を取ることができます。
この例では、 add 関数は、 int 型の2つのパラメータを取ります。
変数名の 後ろ に型名を書くことに注意してください。

x int, y int

x, y int   へ省略可能

関数は複数の戻り値を返すことができます。

func swap(x, y string) (string, string) {
return y, x
}

Goの

Named return value

Goでは、関数の戻り値に名前をつけて変数として利用することができます。
この仕組みをNamed return valueといいます。

func func3(x, y int) (add, sub int) {
add = x + y
sub = x - y
return
}

func main() {
x, y := func3(10, 5)
fmt.Println(x)
fmt.Println(y)
}

add sub という名前付き戻り値で値を返しています。

・var ステートメントは変数( variable )を宣言します。 関数の引数リストと同様に、複数の変数の最後に型を書くことで、変数のリストを宣言できます。

・var 宣言では、変数毎に初期化子( initializer )を与えることができます。

・関数の中では、 var 宣言の代わりに、短い := の代入文を使い、暗黙的な型宣言ができます。
なお、関数の外では、キーワードではじまる宣言( var, func, など)が必要で、 := での暗黙的な宣言は利用できません。

・変数に初期値を与えずに宣言すると、ゼロ値( zero value )が与えられます。
ゼロ値は型によって以下のように与えられます:

  • 数値型(int,floatなど): 0
  • bool型: false
  • string型: "" (空文字列( empty string ))

・型変換
変数 v 、型 T があった場合、 T(v) は、変数 v を T 型へ変換します。

1
2
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
1
2