「Go言語」構造体の関数を呼び出すサンプル

書式
func (変数名 構造体名) 関数名() string {some code}
変数名 := 構造体名{値}
使用例

package main 

import "fmt"

//構造体Studentの定義
type Student struct {
   username string 
}

//構造体Memberの定義
type Member struct {
     Student
}

//構造体Studentの関数funcA
func (sd Student) funcA() string{ 
    return "AA " + sd.username
}

//構造体Memberの関数funcA
func (mb Member) funcB() string { 
    return "BB " + mb.username
}

func main(){
 //構造体Studentの変数cftAの定義  
  cftA := Student{"user001"}
  //funcA関数を呼び出す
  fmt.Println(cftA.funcA())   

 //構造体Memberの変数cftBの定義  
  cftB := Member{}
  cftB.username = "user007"
  //funcA関数を呼び出す
  fmt.Println(cftB.funcB()) 
}

実行結果
>go run sample.go
AA user001
BB user007

Go言語

Posted by arkgame