我是Golang的新手,所以分配它會(huì)讓我發(fā)瘋:import "sync"type SyncMap struct { lock *sync.RWMutex hm map[string]string}func (m *SyncMap) Put (k, v string) { m.lock.Lock() defer m.lock.Unlock() m.hm[k] = v, true}然后,我打電話給:sm := new(SyncMap)sm.Put("Test, "Test")這時(shí)我得到了nil指針恐慌。我通過使用另一個(gè)函數(shù)來解決該問題,并在之后立即調(diào)用它new():func (m *SyncMap) Init() { m.hm = make(map[string]string) m.lock = new(sync.RWMutex)}但是我想知道,是否有可能擺脫這種樣板初始化?
- 3 回答
- 0 關(guān)注
- 263 瀏覽
添加回答
舉報(bào)
0/150
提交
取消