我試圖在 Go 中找到有關(guān)括號括起來的變量聲明語法的一些信息,但也許我只是不知道它的名稱,這就是我找不到它的原因(就像值和指針接收器一樣)。即我想知道這種語法背后的規(guī)則:package mainimport ( "path")// What's this syntax ? Is it exported ? var ( rootDir = path.Join(home(), ".coolconfig"))func main() { // whatever}var ()塊中的那些變量在導(dǎo)入這個變量的模塊中是否可用?
2 回答

開滿天機
TA貢獻(xiàn)1786條經(jīng)驗 獲得超13個贊
這段代碼
// What's this syntax ? Is it exported ?
var (
rootDir = path.Join(home(), ".coolconfig")
)
只是一種更長的寫作方式
var rootDir = path.Join(home(), ".coolconfig")
然而,它在一次聲明大量變量時很有用。代替
var one string
var two string
var three string
你可以寫
var (
one string
two string
three string
)
同樣的技巧也適用于const和type。

小怪獸愛吃肉
TA貢獻(xiàn)1852條經(jīng)驗 獲得超1個贊
var (...)
(并且const (...)
只是讓您避免重復(fù)var
關(guān)鍵字的速記。像這樣的單個變量沒有多大意義,但如果您有多個變量,以這種方式對它們進(jìn)行分組會更好看。
它與出口沒有任何關(guān)系。以這種方式聲明的變量根據(jù)其名稱的大小寫導(dǎo)出(或不導(dǎo)出),就像不帶括號聲明的變量一樣。
- 2 回答
- 0 關(guān)注
- 114 瀏覽
添加回答
舉報
0/150
提交
取消