Function 这个函数是怎么回事?

Function 这个函数是怎么回事?,function,go,Function,Go,我无法理解平等(u T)布尔发生了什么。它是函数中的一个方法吗?方法和函数的区别是什么。我知道这个函数接受t类型的t,如果t=u,则返回true或false type T int func (t T) Equal (u T) bool {return t==u} 这是一个问题,因为Go中的方法只是带有接收器的函数,所以它们是使用关键字func声明的 func (t T) Equal (u T) bool {return t==u} 1 2 3 4 5 6 7

我无法理解平等(u T)布尔发生了什么。它是函数中的一个方法吗?方法和函数的区别是什么。我知道这个函数接受t类型的t,如果t=u,则返回true或false

 type T int 
 func (t T) Equal (u T) bool {return t==u}
这是一个问题,因为Go中的方法只是带有接收器的函数,所以它们是使用关键字
func
声明的

func (t T) Equal (u T) bool {return t==u}
1     2 3  4      5 6  7     8
  • 用于声明函数和方法的关键字
  • 方法接收方的标识符,使用该标识符可以访问方法主体内部的接收方
  • 该方法指定了接收器的类型
  • 方法的名称
  • 方法参数的名称,使用该名称可以访问方法体中的参数
  • 方法参数的类型
  • 方法参数的返回类型
  • 方法的主体

  • 为了进行比较,执行相同操作的函数将声明为:

    func Equal (t T, u T) bool {return t==u}
    

    (无接收者,但需要两个参数)

    请接受。只想说,我从未使用过Golang,但此功能看起来非常酷
    Equal
    T
    上的一种方法。请参观(整个过程),但具体来说,你的问题太宽了。有关方法的问题,请参见带接收器的方法接收器的目的是允许方法接受相同类型的多个变量吗?我明白了,这样可以减少打字。我们现在可以只输入一个“接收者”,而不是输入许多参数。@此处学习否,其目的是不允许一个方法接受同一类型的多个变量。为什么对类型使用方法是一个非常广泛和有趣的问题。然而,它要求您了解什么是方法和接收器。真的,请带上go tour或其他turtorials去编程和go。不,接收器的目的是你可以在特定类型上定义一组方法,然后,除其他外,你可以用这些方法实现接口。因此接收器的目的是限制方法只采用特定类型No,接收器的目的是限制方法的类型。在本例中,
    Equal
    T
    的方法,而其他类型,比如说
    float64
    ,不能使用它。