给定golang巡回演出的第54张幻灯片中的设置:
type Abser interface {
Abs() float64
}
type Vertex struct {
X, Y float64
}
func (v *Vertex) Abs() float64 {
return math.Sqrt(v.X*v.X + v.Y*v.Y)
}
为什么不能同时为结构体和指向结构体的指针定义方法?那是:
func (v Vertex) Abs() float64 {
return math.Sqrt(v.X*v.X + v.Y*v.Y)
}
定义此错误将导致以下错误:
prog.go:41: method redeclared: Vertex.Abs
method(*Vertex) func() float64
method(Vertex) func() float64
白衣非少年
素胚勾勒不出你
相关分类