我正在做一個項目,我正在使用下面的東西func Test(format string, args ...interface{}) string {
return fmt.Sprintf(format, args...)
}現(xiàn)在,當我運行時,go vet -v ./...它會警告我:無法在調(diào)用 Sprintf 時檢查非常量格式據(jù)我了解,這是因為第一個參數(shù)Sprintf不是常量,它可以是基本上作為格式字符串傳遞的任何內(nèi)容。它也很常見,例如這里的獸醫(yī)測試本身現(xiàn)在我知道這是 vet 工具中的一個錯誤,可以通過將 -printf=false參數(shù)傳遞給 go vet 來修復。但這也會禁用所有其他printf檢查,這是我不想要的?,F(xiàn)在真正的問題是,我該如何修復這些警告?
1 回答

ABOUTYOU
TA貢獻1812條經(jīng)驗 獲得超5個贊
如果您通過包調(diào)用“go vet” ,您可以在注釋中使用no-lint 指令gometalinter
告訴 gometalinter 忽略某些警告。例子:
func?Test(format?string,?args?...interface{})?string?{ ????return?fmt.Sprintf(format,?args...)?//?nolint:?vet ????}
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報
0/150
提交
取消