Métodos de funciones en Go

Go 函数Funciones en Go

En Go existen tanto funciones como métodos. Un método es una función que contiene un receptor; el receptor puede ser un valor o un puntero de un tipo nombrado o de un tipo struct. Todos los métodos de un tipo dado pertenecen al conjunto de métodos de ese tipo. El formato de sintaxis es el siguiente:

func (variable_name variable_data_type) function_name() [return_type]{
   /* 函数体*/
}

A continuación se define un tipo struct y un método de ese tipo:

Ejemplo

package main

import (
   "fmt"  
)

/* Definir la estructura */
type Circle struct {
  radius float64
}

func main() {
  var c1 Circle
  c1.radius = 10.00
  fmt.Println("El área del círculo = ", c1.getArea())
}

// Este método pertenece a los métodos del objeto de tipo Circle
func (c Circle) getArea() float64 {
  // c.radius es el atributo del objeto de tipo Circle
  return 3.14 * c.radius * c.radius
}

El resultado de ejecutar el código anterior es:

圆的面积 =  314

Go 函数Funciones en Go

Otras extensiones