使用以下代码
func (s Store) Lookup(department string, number string) (*types.Course, error) {
var result *types.Course
err := s.collection.Find(bson.M{
"department": department,
"course_number": number,
}).One(result)
if err != nil {
switch err {
case mgo.ErrNotFound:
return nil, ErrNotFound
default:
log.Error(err)
return nil, ErrInternal
}
}
return result, nil
}
我遇到了错误:
reflect: reflect.Value.Set using unaddressable value
如果我将第一行从 更改var result *types.Course为result := &types.Course{},则没有错误。这两者之间究竟有什么区别?
慕娘9325324
相关分类