我是Golang的新手,所以分配它会让我发疯: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")这时我得到了nil指针恐慌。我通过使用另一个函数来解决该问题,并在之后立即调用它new():func (m *SyncMap) Init() { m.hm = make(map[string]string) m.lock = new(sync.RWMutex)}但是我想知道,是否有可能摆脱这种样板初始化?
3 回答
- 3 回答
- 0 关注
- 243 浏览
添加回答
举报
0/150
提交
取消