【发布时间】:2016-11-21 18:15:14
【问题描述】:
我刚开始学习 golang。
我发现& 运算符对于简单类型和结构的行为不同。
对于简单类型,
&返回地址。对于结构,它返回其他内容。
代码:
package main
import "fmt"
type person struct {
name string
age int
}
func main() {
s1 := "abc"
fmt.Println("s1 address =", &s1)
s2 := person{"Sam", 55}
fmt.Println("s2 address = ", &s2)
}
输出:
[ `hello` | done: 79.0079ms ]
s1 address = 0xc04203c1e0
s2 address = &{Sam 55} <======== What's this? And why not some address like above?
同样,这个设计是have-to 还是happen-to?
【问题讨论】:
标签: go