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

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

可變參數函數,無法傳遞參數

可變參數函數,無法傳遞參數

Go
Qyouu 2022-08-01 16:48:19
為了調用對話框可執行文件,最多需要3個按鈕,我創建了這個函數:func Dialog(icon string, text string, buttons ...string) int {    cmd := &exec.Cmd{        Path: dialogPath,        Args: []string{            dialogPath,            icon,            text,            buttons...,        },        Stdout: os.Stdout,        Stdin:  os.Stdin,    }    var waitStatus syscall.WaitStatus    if err := cmd.Run(); err != nil {        if exitError, ok := err.(*exec.ExitError); ok {            waitStatus = exitError.Sys().(syscall.WaitStatus)            return waitStatus.ExitStatus()        }    }    return 0}問題是:這甚至無法編譯,因為我不知道如何將按鈕傳遞給Cmd。我以為拆包就能解決問題。
查看完整描述

1 回答

?
蝴蝶刀刀

TA貢獻1801條經驗 獲得超8個贊

錯誤是:


syntax error: unexpected ..., expecting comma or }

這是因為這不是有效的語法:


    Args: []string{

        dialogPath,

        icon,

        text,

        buttons...,

    },

只能在函數調用中使用;您可以使用來解決此問題:...append()


    Args:   append([]string{dialogPath, icon, text}, buttons...),


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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