目次
Go言語(golang)の変数シャドウイングとは?
Go言語の変数シャドウイングとは、同じ名前の変数を異なるスコープ内で宣言することです。
これにより、内側のスコープで新しい変数が宣言され、外側のスコープで同じ名前の変数が隠されます。
Go言語(golang)の変数シャドウイングの使い方
package main
import "fmt"
func main() {
// 外側のスコープでの変数xの宣言
x := 10
fmt.Println("Outer x:", x) // Outer x: 10
// 内側のスコープでの変数xの宣言(変数シャドウイング)
if true {
x := 20
fmt.Println("Inner x:", x) // Inner x: 20
}
// 内側のスコープで宣言した変数xは、外側のスコープでの変数xをシャドウイングしている
fmt.Println("Outer x after shadowing:", x) // Outer x after shadowing: 10
}
この例では、内側のスコープで新しい変数 x
を宣言しており、外側のスコープで宣言された x
をシャドウイングしています。内側のスコープで宣言された x
は、外側のスコープでの x
とは別の変数として扱われます。
結果は次が得られます。
Outer x: 10
Inner x: 20
Outer x after shadowing: 10