在写go的时候, 经常会有这样的情况
a, err := x()
b, err := y()
虽然第二行是使用:=, 但是还是和第一行的err是一个值
但是当下面这种情况
a, err := x()
if true {
b, err := y()
}
就不是一个值了, 因为有了{}这个作用域
总结就是=都用旧值, :=的之后至少有一个新值, 其他能用新就用新
以前结果都是我通过实验猜出来的, 就是这样了
在写go的时候, 经常会有这样的情况
a, err := x()
b, err := y()
虽然第二行是使用:=, 但是还是和第一行的err是一个值
但是当下面这种情况
a, err := x()
if true {
b, err := y()
}
就不是一个值了, 因为有了{}这个作用域
总结就是=都用旧值, :=的之后至少有一个新值, 其他能用新就用新
以前结果都是我通过实验猜出来的, 就是这样了