將一些地圖定義為:var valueToSomeType = map[uint8]someType{...}var nameToSomeType = map[string]someType{...}我想要一個(gè)指向地圖地址的變量(不要復(fù)制所有變量)。我嘗試使用:valueTo := &valueToSomeTypenameTo := &nameToSomeType但在使用時(shí)valueTo[number],它顯示內(nèi)部編譯器錯(cuò)誤:無類型的var,初始化:new如何獲得?編輯該錯(cuò)誤是由另一個(gè)問題顯示的。
3 回答

SMILET
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊
更具體地說,根據(jù)Golang規(guī)范:
切片,地圖和通道是引用類型,不需要使用進(jìn)行額外的間接分配
new
。
內(nèi)置函數(shù)make采用一個(gè)typeT
,該類型必須是slice,map或channel類型,還可以選擇后面是特定于類型的表達(dá)式列表。
它返回一個(gè)類型為T
(not*T
)的值。
存儲(chǔ)器按照有關(guān)初始值的部分中的說明進(jìn)行初始化
但是,對(duì)于函數(shù)調(diào)用,參數(shù)按值傳遞(始終)。
除了map參數(shù)的值是指針。
- 3 回答
- 0 關(guān)注
- 313 瀏覽
添加回答
舉報(bào)
0/150
提交
取消