在Go語言中,全局變量可以在整個程序范圍內訪問,包括局部作用域。但是,如果你想在局部作用域內使用全局變量,你需要使用關鍵字var在局部作用域內聲明一個同名的局部變量。這樣,局部變量會遮蔽全局變量,導致在局部作用域內只能訪問到局部變量。
下面是一個示例:
package main
import "fmt"
// 全局變量
var globalVar int = 10
func main() {
// 局部變量,與全局變量同名
var globalVar int = 20
fmt.Println("Global variable:", globalVar) // 輸出:Global variable: 10
fmt.Println("Local variable:", globalVar) // 輸出:Local variable: 20
}
在這個例子中,我們在main函數的局部作用域內聲明了一個與全局變量同名的局部變量globalVar。因此,在main函數內,我們訪問到的globalVar實際上是局部變量,而不是全局變量。