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

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

go - 如何將類型作為函數(shù)的參數(shù)傳遞?

go - 如何將類型作為函數(shù)的參數(shù)傳遞?

Go
慕的地6264312 2022-07-25 11:00:28
所以我有一個(gè)結(jié)構(gòu)type Book struct {    Name   string    Author string}這是我使用這個(gè)結(jié)構(gòu)時(shí)的代碼func Add(obj string) {    res, err := json.Marshal(obj)    if err != nil {        fmt.Println(err)    }    fmt.Println(string(res))}func main() {    Open("./example.json")    book := Book{"test", "me"}    fmt.Println(reflect.TypeOf(book).String())    Add(book)}現(xiàn)在我想做的是在函數(shù)中傳遞該書對象或變量,Add當(dāng)我嘗試這樣做時(shí),它給了我一個(gè)錯(cuò)誤。cannot use book (type Book) as type string in argument to Add那么如何解決它以及如何book在函數(shù)中將對象作為參數(shù)傳遞Add?
查看完整描述

1 回答

?
楊魅力

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超6個(gè)贊

您的結(jié)構(gòu)Book現(xiàn)在就像它自己的數(shù)據(jù)類型一樣。如果您只想在函數(shù)中接受這種數(shù)據(jù)類型Add,則需要替換string為Book.


所以代碼看起來像這樣:


package main


import "encoding/json"


type Book struct {

    Name   string

    Author string

}


func Add(obj Book) {

    res, err := json.Marshal(obj)

    if err != nil {

        fmt.Println(err)

    }

    fmt.Println(string(res))

}


func main() {

    Open("./example.json")

    book := Book{"test", "me"}

    fmt.Println(reflect.TypeOf(book).String())

    Add(book)

}


查看完整回答
反對 回復(fù) 2022-07-25
  • 1 回答
  • 0 關(guān)注
  • 130 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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