刚接触 Golang 并试图理解我遇到的代码片段。在我正在阅读的博客中,他们定义了一个Vertex这样的结构:
type Vertex struct {
X int
Y int
}
然后展示一个如何创建它的新实例并修改其字段之一的示例:
v1 := Vertex{1,2}
v1.X = 3
但是,他们展示了如何创建指向此结构实例的指针并修改其字段之一的示例:
v2 := &Vertex{3,4}
v2.X = 3
这让我有点困惑。对我来说,该语句v2 := &Vertex{3,4}翻译为:“v2是指向新Vertex{3,4}实例的指针”。如果这是真的,那么 ifv2是一个指向结构的指针Vertex,而不是Vertex结构本身,那么我们如何调用v2.X它(它是一个指针!!!)?
白衣染霜花
相关分类