Методы функций в языке Go

Функции в Go

В Go есть как функции, так и методы. Метод — это функция, которая включает получателя; получатель может быть значением или указателем именованного типа или типа структуры. Все методы данного типа принадлежат набору методов этого типа. Синтаксический формат следующий:

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

Ниже определяется тип структуры и метод этого типа:

Пример

package main

import (
   "fmt"  
)

/* Определить структуру */
type Circle struct {
  radius float64
}

func main() {
  var c1 Circle
  c1.radius = 10.00
  fmt.Println("Площадь круга = ", c1.getArea())
}

//Этот метод принадлежит объекту типа Circle.
func (c Circle) getArea() float64 {
  //c.radius — это свойство в объекте типа Circle
  return 3.14 * c.radius * c.radius
}

Результат выполнения приведённого выше кода:

圆的面积 =  314

Функции в Go

Другие расширения