第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將 interface{} 作為特定結(jié)構(gòu)傳遞給函數(shù)?

如何將 interface{} 作為特定結(jié)構(gòu)傳遞給函數(shù)?

Go
守著一只汪 2021-10-11 10:53:06
我正在嘗試使用通用例程處理特定組件之間的消息。其中一部分涉及讀取字節(jié)數(shù)組并使用 json.Marshal 和 json.Unmarshal 并調(diào)用回調(diào)。我試圖將接口傳遞給需要特定結(jié)構(gòu)的函數(shù),但我不知道目標(biāo)結(jié)構(gòu)的類型。在下面的代碼中,函數(shù) r() 如何調(diào)用函數(shù) cb() 并傳入正確的數(shù)據(jù)?package mainimport (    "encoding/json"    "fmt"    "reflect")type Bottom struct {    Foo string}func cb(b *Bottom) {    fmt.Println("5. ", b)}func r(t interface{}, buf []byte) {    _ = json.Unmarshal(buf, &t)    fmt.Println("2. ", reflect.TypeOf(t))    fmt.Println("3. ", t)    cb(&t)}func main() {    x := Bottom{Foo: "blah"}    var y Bottom    buf, _ := json.Marshal(x)    fmt.Println("1. ", x)    r(&y, buf)}
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 197 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號