Go 語言函數(shù)方法

Go 函數(shù)Go 函數(shù)

Go 語言中同時(shí)有函數(shù)和方法。一個(gè)方法就是一個(gè)包含了接受者的函數(shù),接受者可以是命名類型或者結(jié)構(gòu)體類型的一個(gè)值或者是一個(gè)指針。所有給定類型的方法屬于該類型的方法集。語法格式如下:

func (variable_name variable_data_type) function_name() [return_type]{
   /* 函數(shù)體*/
}

下面定義一個(gè)結(jié)構(gòu)體類型和該類型的一個(gè)方法:

package main

import (
   "fmt"  
)

/* 定義函數(shù) */
type Circle struct {
  radius float64
}

func main() {
  var c1 Circle
  c1.radius = 10.00
  fmt.Println("Area of Circle(c1) = ", c1.getArea())
}

//該 method 屬于 Circle 類型對(duì)象中的方法
func (c Circle) getArea() float64 {
  //c.radius 即為 Circle 類型對(duì)象中的屬性
  return 3.14 * c.radius * c.radius
}

以上代碼執(zhí)行結(jié)果為:

Area of Circle(c1) =  314

Go 函數(shù)Go 函數(shù)