1. 程式人生 > >[Go] golang結構體成員與函數類型

[Go] golang結構體成員與函數類型

邏輯 true div ring int pac return 結構體 new

package main

import (
	"fmt"
)

//定義一個類型
type tsh struct {
	//定義成員,類型是func() string
	test func() string
}

//定義一個函數,獲取tsh類型
func New(fn func() string) *tsh {
	return &tsh{
		test: fn,
	}
}
func cre() string {
	return fmt.Sprintf("%s,來了", "tsh")
}

func main() {
	//new完得到tsh類型,調用該結構體的test成員,該成員是個函數
	res := New(cre).test()
	fmt.Println(res)
}

某些類的邏輯非常復雜,簡化代碼幫助理解下邏輯  

[Go] golang結構體成員與函數類型