1 回答

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個(gè)贊
不。有關(guān)推理,請(qǐng)參閱以下常見問題解答:
常見問題解答:我可以停止這些關(guān)于我未使用的變量/導(dǎo)入的投訴嗎?
未使用的變量的存在可能表示存在錯(cuò)誤,而未使用的導(dǎo)入只會(huì)減慢編譯速度,隨著時(shí)間的推移,隨著程序積累代碼和程序員,這種影響會(huì)變得很大。由于這些原因,Go 拒絕使用未使用的變量或?qū)雭砭幾g程序,用短期的便利換取長(zhǎng)期的構(gòu)建速度和程序清晰度。
盡管如此,在開發(fā)代碼時(shí),臨時(shí)創(chuàng)建這些情況是很常見的,并且在程序編譯之前必須編輯它們可能很煩人。
有些人要求提供一個(gè)編譯器選項(xiàng)來關(guān)閉這些檢查或至少將它們減少為警告。但是,還沒有添加這樣的選項(xiàng),因?yàn)榫幾g器選項(xiàng)不應(yīng)該影響語言的語義,并且因?yàn)?Go 編譯器不報(bào)告警告,只報(bào)告阻止編譯的錯(cuò)誤。
沒有警告有兩個(gè)原因。首先,如果值得抱怨,就值得在代碼中修復(fù)。(如果它不值得修復(fù),那就不值得一提了。)第二,讓編譯器生成警告鼓勵(lì)實(shí)現(xiàn)警告可能使編譯嘈雜的弱情況,掩蓋應(yīng)該修復(fù)的實(shí)際錯(cuò)誤。
不過,解決這種情況很容易。使用空白標(biāo)識(shí)符讓未使用的東西在您開發(fā)時(shí)保持不變。
您可以做的是在暫時(shí)想要排除某些內(nèi)容時(shí)使用空白標(biāo)識(shí)符,例如
import (
"fmt"
_ "time" // This will make the compiler stop complaining
)
如今,大多數(shù) Go 程序員使用goimports工具,該工具會(huì)自動(dòng)重寫 Go 源文件以獲得正確的導(dǎo)入,從而消除了實(shí)踐中未使用的導(dǎo)入問題。這個(gè)程序很容易連接到大多數(shù)編輯器,以便在編寫 Go 源文件時(shí)自動(dòng)運(yùn)行。
- 1 回答
- 0 關(guān)注
- 191 瀏覽
添加回答
舉報(bào)