GO中变量的作用域

发布时间 2023-10-24 14:58:48作者: 厚礼蝎

对于全局变量

  • 如果以大写字母开头,所有地方都可以访问,跨package访问时需要带上package名称;
  • 如果以小写字母开头,则本package内都可以访问。

函数内部的局部变量,仅本函数内可以访问。

{}可以固定一个作用域。

内部声明的变量可以跟外部声明的变量有冲突,以内部的为准--就近原则

var (
    A=3	//所有地方都可以访问
    b=4	//本package内可以访问
)

func foo(){
    b:=5  //本函数内可以访问
    {
        b:=6  //本作用域内可以访问
    }
}

包目录下的所有文件的全局变量都可以通用,没有大小写限制,也不需要带上包名