golang介面的這個用法,我到還真是百思不得其解,望解惑
type I interface{}
type II interface{
f1()
}
func g2(a II) {
fmt.Println("xxx")
}
func h3(b I) {
g2(b.(II))
}
type Message struct {
Name string `json:"msg_name"`
}
func (*Message) f1() {
}
func main(){
var m = Message{
Name: "Alice",
}
h3(&m)
}
h3 函式中的g2(b.(II))
這到底是個什麼用法?介面強制轉換?不像啊,我知道b
其實是從I介面
動態轉過來的*Message型別
,那這個b.(II)
算啥意思?
更多原創文章乾貨分享,請關注公眾號
- 加微信實戰群請加微信(註明:實戰群):gocnio
相關文章
- Session.load()這個方法還真是怪!Session
- 這兩個願望我實現了
- 這兩個小工具,真是推薦了還想推薦。
- 來這個論壇沒多久,發現真是好地方,象banq這樣的高手這真是多
- 這樣寫程式碼,真是帥到沒有朋友
- webpack解惑:require的五種用法WebUI
- 敲了這麼多年程式碼,這樣的登入方式還真是頭一回見
- 我實現了一個更全面的 Golang 版本的布穀鳥過濾器Golang過濾器
- Golang | 簡介channel常見用法,完成goroutin通訊Golang
- 我做這個程式設計師還有意思嗎?程式設計師
- 『簡書API:jianshu 基於golang -- 用法介紹 (2)』APIGolang
- golang 中fmt用法Golang
- golang range的用法Golang
- 我們團隊還差一個golang服務端主程-深圳寶安區Golang服務端
- 你居然不知道postman還有這些用法?Postman
- 這種題都做不出來我還打個集貿的 OI 啊
- golang中channel的用法Golang
- golang flag簡單用法Golang
- C語言中typedef用法的疑惑——解惑公佈版C語言
- iOS NSString真是個奇葩啊!iOS
- 初學 golang 選擇這兩個框架Golang框架
- golang package time 用法詳解GolangPackage
- 這個jive還沒有個性簽名
- 給大家丟臉了,用了三年golang,我還是沒答對這道記憶體洩漏題Golang記憶體
- 關於這個知識點,我被讀者罵到回家種田
- YUI可真是個不錯的東東UI
- 我丟,GitHub 上竟然還有這種騷操作Github
- 我愛上了這個網站!網站
- 我與這個世界格格不如
- golang中的類和介面的使用Golang
- 迫於失業,寫了一個讓我覺得很爽的 AlfredWorkFlow(我暫時還沒見到更爽的Alfred
- 翻譯:WebAssembly簡介:我們為什麼要關心這個技術? Web
- Golang Tools 介紹Golang
- golang 特性簡介Golang
- 解惑4:java是值傳遞還是引用傳遞Java
- 關於單點登入方面的討論,請高手暢言解惑!!
- 用程式碼構建機器心智,我們離這個目標還有多遠?
- 【北京望京】Contentbox招聘golang、區塊鏈工程師Golang區塊鏈工程師