こんにちは、takaです。
今回はGo言語における変数の定義の仕方を解説していきます。
ではいってみましょう。
Go言語の変数について
明示的な定義
Go言語では、変数を宣言する際には以下のように書きます:
var 変数名 データ型
または
var 変数名 = 初期値
上記の記法を「明示的な定義」と言います。
変数名とデータ型両方を明示的に指定して定義します。
以下はいくつかの例です:
var age int // int型の変数ageを宣言
var name string = "John" // string型の変数nameを宣言し、初期値を与える
var score float64 // float64型の変数scoreを宣言
age = 30 // 変数ageに値を代入
score = 85.5 // 変数scoreに値を代入
fmt.Println(name) // "John" が出力される
fmt.Println(age) // 30 が出力される
fmt.Println(score) // 85.5 が出力される
暗黙的な定義
一方で以下のような定義を「暗黙的な定義」と言います。
型推論を利用し以下のように書きます。
変数名 := 初期値
変数名は任意の識別子を使用し、データ型はその変数が保持するデータの型を指定します。Go言語では、変数を宣言した際に必ず初期値を与える必要があります。
型推論を使った宣言は以下のようになります:
age := 30
name := "John"
score := 85.5
Go言語では、変数名の前に var キーワードを使って宣言するか、型推論を利用して := を使って宣言することができます。
Go言語での暗黙的な変数の定義の注意点
- 初期化された変数の型が変更されない: 変数が初期化された時点で、その変数の型は固定されます。後から別の型の値を代入することはできません。
- 初期値がnilの場合: 型推論によって変数が宣言され、初期値が nil の場合、変数は interface{} 型として推論されます。
- 関数の外での暗黙的な宣言: 関数の外で暗黙的な変数宣言(:= を使った宣言)はできません。
- 適切な初期値を与える: 変数は初期化時に値を必ず与える必要があります。適切な初期値を与えない場合、コンパイルエラーが発生します。
これらの注意点に留意して、暗黙的な変数宣言を行うことで、コードの簡潔さと可読性を向上させることができます。