Skip to content

Commit

Permalink
Merge pull request #210 from hanzhuoxian/master
Browse files Browse the repository at this point in the history
第一章第二节 逻辑修正
  • Loading branch information
chai2010 authored Nov 29, 2023
2 parents d35ce39 + 233eef7 commit b8d7c32
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion ch1/ch1-02.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ var s = ""
var s string = ""
```

用哪种不用哪种,为什么呢?第一种形式,是一条短变量声明,最简洁,但只能用在函数内部,而不能用于包变量。第二种形式依赖于字符串的默认初始化零值机制,被初始化为 `""`。第三种形式用得很少,除非同时声明多个变量。第四种形式显式地标明变量的类型,当变量类型与初值类型相同时,类型冗余,但如果两者类型不同,变量类型就必须了。实践中一般使用前两种形式中的某个,初始值重要的话就显式地指定变量的类型,否则使用隐式初始化
用哪种不用哪种,为什么呢?第一种形式,是一条短变量声明,最简洁,但只能用在函数内部,而不能用于包变量。第二种形式依赖于字符串的默认初始化零值机制,被初始化为 `""`。第三种形式用得很少,除非同时声明多个变量。第四种形式显式地标明变量的类型,当变量类型与初值类型相同时,类型冗余,但如果两者类型不同,变量类型就必须了。实践中一般使用前两种形式中的某个,初始值重要的话就显式地指定变量的值,否则指定类型使用隐式初始化

如前文所述,每次循环迭代字符串 `s` 的内容都会更新。`+=` 连接原字符串、空格和下个参数,产生新字符串,并把它赋值给 `s``s` 原来的内容已经不再使用,将在适当时机对它进行垃圾回收。

Expand Down

0 comments on commit b8d7c32

Please sign in to comment.