mirror of
https://github.com/gopl-zh/gopl-zh.github.com.git
synced 2025-10-18 04:52:25 +00:00
fix typo
This commit is contained in:
@@ -32,9 +32,9 @@ q := new(int)
|
||||
fmt.Println(p == q) // "false"
|
||||
```
|
||||
|
||||
当然也可能有特殊情况:如果两个类型都是空的,也就是说类型的大小是0,例如`struct{}`和 `[0]int`, 有可能有相同的地址(依赖具体的语言实现)(译注:请谨慎使用大小为0的类型,因为如果类型的大小位0好话,可能导致Go语言的自动垃圾回收器有不同的行为,具体请查看`runtime.SetFinalizer`函数相关文档)。
|
||||
当然也可能有特殊情况:如果两个类型都是空的,也就是说类型的大小是0,例如`struct{}`和 `[0]int`, 有可能有相同的地址(依赖具体的语言实现)(译注:请谨慎使用大小为0的类型,因为如果类型的大小为0的话,可能导致Go语言的自动垃圾回收器有不同的行为,具体请查看`runtime.SetFinalizer`函数相关文档)。
|
||||
|
||||
new函数使用常见相对比较少,因为对应结构体来说,可以直接用字面量语法创建新变量的方法会更灵活(§4.4.1)。
|
||||
new函数使用通常相对比较少,因为对于结构体来说,直接用字面量语法创建新变量的方法会更灵活(§4.4.1)。
|
||||
|
||||
由于new只是一个预定义的函数,它并不是一个关键字,因此我们可以将new名字重新定义为别的类型。例如下面的例子:
|
||||
|
||||
@@ -43,4 +43,3 @@ func delta(old, new int) int { return new - old }
|
||||
```
|
||||
|
||||
由于new被定义为int类型的变量名,因此在delta函数内部是无法使用内置的new函数的。
|
||||
|
||||
|
Reference in New Issue
Block a user