亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

無法傳播數組以作為多個參數傳遞

無法傳播數組以作為多個參數傳遞

Go
RISEBY 2023-05-04 16:51:04
我有這個:methods := [...]string{"POST", "PUT"}router.HandleFunc(h.makeRegisterNewUser("/api/v1/register", v)).Methods("POST", "PUT")可以使用,除非methods未使用。如果我試試這個:methods := [...]string{"POST", "PUT"}router.HandleFunc(h.makeRegisterNewUser("/api/v1/register", v)).Methods(methods...)我收到此錯誤:不能在 router.HandleFunc(h.makeRegisterNewUser("/api/v1/register", v)).Methods 的參數中使用方法(類型 [2]string)作為類型 []string我想不通這個
查看完整描述

2 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

你不需要...methods := [...]string{"POST", "PUT"}

 methods := []string{"POST", "PUT"}

編輯:數組與切片略有不同。該[...]符號創建一個數組,而可變參數函數(如Methods()接受切片)。如果你真的需要一個數組,你可以使用它的一部分[:]

router.HandleFunc(h.makeRegisterNewUser("/api/v1/register", v)).Methods(methods[:]...)



查看完整回答
反對 回復 2023-05-04
?
至尊寶的傳說

TA貢獻1789條經驗 獲得超10個贊

混淆是由于 Go 和其他語言中的命名略有不同。類似不同長度數組的數據結構,在Go中被各種語言稱為“array”、“vector”、“list”的數據結構被稱為“slice”。而 Go 中的“數組”是另一回事——一種固定長度的結構。



查看完整回答
反對 回復 2023-05-04
  • 2 回答
  • 0 關注
  • 129 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號