@adamhand
2019-01-30T08:57:14.000000Z
字数 500
阅读 1006
可以使用var关键字定义变量,语法如下:
var name type = exception
type和exception可以省略一个。如果type省略,变量类型将有exception决定,叫做“类型推断”;如果exception省略,那么初始值对应于类型的零值:
还可以使用简短模式定义变量:
name := exception
但是有些限制:
简短模式并不总是重新定义变量,也可能是部分退化的赋值操作:
func main(){x := 100;x, y := 200, "abc" //仅有y是变量定义}
退化赋值的前提条件是:最少有一个新变量被定义,且必须是同一作用域。下面的做法是错误的;
func main(){x := 100{x, y := 200, 300 //不同作用域}}
上述两种声明方法均支持多变量赋值:
func main(){x, y := 100, 300x, y = y+3, x+2 //先计算出右值,然后再赋值给x, y}
