mirror of
https://github.com/gopl-zh/gopl-zh.github.com.git
synced 2025-10-23 23:11:49 +00:00
第2章,部分字词修订。
This commit is contained in:
@@ -8,7 +8,7 @@ freq := rand.Float64() * 3.0
|
||||
t := 0.0
|
||||
```
|
||||
|
||||
因为简洁和灵活的特点,简短变量声明被广泛用于大部分的局部变量的声明和初始化。var形式的声明语句往往是用于需要显式指定变量类型地方,或者因为变量稍后会被重新赋值而初始值无关紧要的地方。
|
||||
因为简洁和灵活的特点,简短变量声明被广泛用于大部分的局部变量的声明和初始化。var形式的声明语句往往是用于需要显式指定变量类型的地方,或者因为变量稍后会被重新赋值而初始值无关紧要的地方。
|
||||
|
||||
```Go
|
||||
i := 100 // an int
|
||||
@@ -26,7 +26,7 @@ i, j := 0, 1
|
||||
|
||||
但是这种同时声明多个变量的方式应该限制只在可以提高代码可读性的地方使用,比如for语句的循环的初始化语句部分。
|
||||
|
||||
请记住“:=”是一个变量声明语句,而“=”是一个变量赋值操作。也不要混淆多个变量的声明和元组的多重赋值(§2.4.1),后者是将右边各个的表达式值赋值给左边对应位置的各个变量:
|
||||
请记住“:=”是一个变量声明语句,而“=”是一个变量赋值操作。也不要混淆多个变量的声明和元组的多重赋值(§2.4.1),后者是将右边各个表达式的值赋值给左边对应位置的各个变量:
|
||||
|
||||
```Go
|
||||
i, j = j, i // 交换 i 和 j 的值
|
||||
@@ -61,6 +61,6 @@ f, err := os.Open(infile)
|
||||
f, err := os.Create(outfile) // compile error: no new variables
|
||||
```
|
||||
|
||||
解决的方法是第二个简短变量声明语句改用普通的多重赋值语言。
|
||||
解决的方法是第二个简短变量声明语句改用普通的多重赋值语句。
|
||||
|
||||
简短变量声明语句只有对已经在同级词法域声明过的变量才和赋值操作语句等价,如果变量是在外部词法域声明的,那么简短变量声明语句将会在当前词法域重新声明一个新的变量。我们在本章后面将会看到类似的例子。
|
||||
|
||||
Reference in New Issue
Block a user