HOOHyou

第 4366 号会员 /

回复了 HOOHyou 创建的主题: go语言中的type后面跟着的是名字还是类型?

@leronpror
谢谢你的解答。

不好意思纠结于这个小地方。如果type后面跟着的是类型,那岂不是strType和struct都是类型啦?而且根据fmt.Printf("%T\n",...)这个打印出来的是main.strType。如果strType是类型的话,那struct对于这个参数来说又是什么呢?

不太理解这种语法。望解答,谢谢

回复了 HOOHyou 创建的主题: go里的内建接口

@stevewang
谢谢你的回答。是我看的不仔细。go指南只是说error接口和Stringer比较类似。

而且看教程上的代码确实很类似,都是把实现的方法定义给一个结构体。然后打印这个结构体,就会自动调用实现的方法了。

就这个“自动调用实现的方法”不太理解。我都没看到有a.String()之类的代码。这个是go独特的写法吗?

回复了 HOOHyou 创建的主题: go语言中 *和&符号的一些疑惑。

@jimmykuu
感谢你的回答。

func (v *Vertex) Abs() float64 这种写法其实是个语法糖,其实就是 func Abs(v *Vertex) float64

根据我在Go指南上学的,看到的是这种写法主要是为了在Vertex结构体上定义Abs方法,然后可以用a.Abs()来调用这个方法。

如果是func Abs(v *Vertex) float64 这样的写法,那就是传参了,然后我根据你说的这样修改了一下代码,就会报错。
不知道对于这样的语法是否还有其他解释,谢谢