ホーム プログラミング言語 golang go syntax Go言語の匿名変数(名前のない変数)

Go言語の匿名変数(名前のない変数)


 
 
コーディング中に、名前のない変数、型、メソッドに遭遇することがあります。これは必須ではありませんが、そうすることでコードの柔軟性が大幅に向上する場合があります。これらの変数は総称して匿名変数と呼ばれます。

 

匿名変数はアンダースコア「_」によって特徴づけられ、それ自体が空白識別子として知られる特別な識別子です。他の識別子と同様に、変数の宣言または割り当てに使用できます (任意の型を割り当てることができます)。ただし、この識別子に割り当てられた値は破棄されるため、これらの値を後続のコードで使用することはできません。この識別子を変数として使用して、他の変数を割り当てたり、他の変数を操作したりできます。匿名変数を使用する場合、アンダースコアを使用して変数宣言を置き換えるだけで済みます。例えば:

 func GetData() (int, int) {
    return 100, 200
}
func main(){
    a, _ := GetData()
    _, b := GetData()
    fmt.Println(a, b)
} 
- -
func GetData() (int, int) {
    return 100, 200
}
func main(){
    a、_ := GetData()
    _, b := GetData()
    fmt.Println(a、b)
} 

コードを実行した結果:

100 200

GetData() は 2 つの整数の戻り値を持つ関数です。各呼び出しは、100 と 200 の 2 つの値を返します。

コードの説明は次のとおりです。

  • 5 行目は最初の戻り値のみを取得する必要があるため、2 番目の戻り値の変数 (匿名変数) に下線が引かれています。
  • 6 行目では、値を返す最初の変数を匿名変数にします。

匿名変数はメモリ空間を占有せず、メモリを割り当てません。無名変数と無名変数の間では、多重宣言により使用できなくなることはありません。

ヒント: Lua などのプログラミング言語では、匿名変数はダミー変数とも呼ばれます。

 

「 Go言語の匿名変数(名前のない変数)」についてわかりやすく解説!絶対に観るべきベスト2動画

【たった1時間で学べる】Go言語のプログラミング初心者向けの超入門講座【文字書き起こし、ソースコードも完全無料!】
変数って何?変数と変数名について理解しよう!Python基礎