概述
- 在静态语言中,变量作用域是有严格要求的
作用域示例
Go 中可以直接写 {} 代码块
package main
import "fmt"
func main() {
{
var localName = "鸣人"
fmt.Println(localName)
}
fmt.Println(localName) // 报错
}
常用写法
package main
import "fmt"
var name = "鸣人"
func main() {
var age int
if name == "鸣人" {
age := 18
fmt.Println("inner naruto", age) // inner naruto 18
} else {
age = 20
fmt.Println("inner other", age)
}
fmt.Println("outer", age) // outer 0
}