go的变量
变量记录的是一个位置,这个位置中存放的值是可以变化的。
变量是有类型的,变量的类型规定了如何解读指定位置中存放的值。
静态类型和动态类型
变量的类型分为静态类型和动态类型。
声明变量时,指定的类型是变量的静态类型。
如果变量静态类型是接口(interface type),它还会有一个动态类型,动态类型就是被赋予的值的类型。
var x interface{} // x is nil and has static type interface{}
x = 42 // x has value 42 and dynamic type int
x = v // x has value (*T)(nil) and dynamic type *T
如果声明变量时没有设置变量的值,它的值就是对应类型的零值(zero value)。