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

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

將 []string 傳遞給需要可變參數的函數

將 []string 傳遞給需要可變參數的函數

Go
喵喵時光機 2021-11-08 17:03:01
為了不要一遍又一遍地重復我自己,我想創建一個處理運行一些命令的函數。func runCommand(name string, arg ...string) error {    cmd := exec.Command(name, arg)    if err := cmd.Run(); err != nil {        return err    } else {        return nil    }}一旦我嘗試運行它,我就會收到以下錯誤:cannot use arg (type []string) as type string in argument to exec.Command我查看了 的實現,os.Command看起來函數簽名正是我提供的。在內部 a[]string應該與可變參數相同,但對于編譯器來說似乎不是。有沒有辦法將可變參數傳遞到Command?
查看完整描述

1 回答

?
鴻蒙傳說

TA貢獻1865條經驗 獲得超7個贊

[]string用另一個擴展...

cmd := exec.Command(name, arg...)

語言規范傳遞參數...參數

如果最后一個參數可分配給切片類型[]T,則...T如果參數后跟.... 在這種情況下,不會創建新切片。

給定切片 s 并調用

s := []string{"James", "Jasmine"}
Greeting("goodbye:", s...)

在 Greeting 中,who將具有s與相同底層數組相同的值。


查看完整回答
反對 回復 2021-11-08
  • 1 回答
  • 0 關注
  • 283 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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