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

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

如何在golang中聲明一個函數(shù)接受一個接口數(shù)組?

如何在golang中聲明一個函數(shù)接受一個接口數(shù)組?

Go
翻翻過去那場雪 2021-11-22 19:38:27
我想聲明一個函數(shù)接受接口數(shù)組,例如:func (this *CvStoreServiceImpl) setItemList(coll *mgo.Collection, itemList ...interface{}) (err error)然而,當(dāng)我像下面這樣調(diào)用這個函數(shù)時失敗了:jobList := cvRaw.GetJobList() this.setItemList(jobColl, jobList...)這是錯誤:cannot use cvRaw.GetJobList() (type []*cv_type.CvJobItemRaw) as type []interface {} in argument to this.setItemList
查看完整描述

2 回答

?
素胚勾勒不出你

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個贊

這個問題正確地聲明了setItemList方法,假設(shè)你想要一個可變參數(shù)。由于該setList函數(shù)適用于任何 Mongo 文檔類型,因此適合interface{}在此場景中使用。


A[]*cv_type.CvJobItemRaw不能轉(zhuǎn)換為 a []interface{}。編寫一個循環(huán)來創(chuàng)建[]interface{}from jobList。


jobList := cvRaw.GetJobList()

s := make([]interface{}, len(t))

for i, v := range t {

    s[i] = v

}

this.setItemList(jobColl, s...)

有關(guān)更多詳細(xì)信息,請參閱Go 語言常見問題解答。


查看完整回答
反對 回復(fù) 2021-11-22
?
幕布斯6054654

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個贊

我想你要找的是這個


package main


import "fmt"


func main() {

    interfacetious := []interface{}{"s", 123, float64(999)}

    stuff(interfacetious)

    stuff2(interfacetious...)


    stuff2("or", 123, "separate", float64(99), "values")

}


// Stuff can only work with slice of things

func stuff(s []interface{}) {

    fmt.Println(s)

}


// Stuff2 is polyvaridc and can handle individual vars, or a slice with ...

func stuff2(s ...interface{}) {

    fmt.Println(s)

}


查看完整回答
反對 回復(fù) 2021-11-22
  • 2 回答
  • 0 關(guān)注
  • 326 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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