go - 一个函数的两个写法:return 空
访问量: 43
refer to: poe
例如,下面33行的方法,会return 39行的变量(该变量声明于34行)
42行的方法,则直接把42行尾部的 users拿过来,在43行中调用和赋值。这样45行就直接一个return就好了。
33 func (u *Users) GetCalculationResults() ([]CalculationResults, error) {
34 var calculationResults []CalculationResults
35 err := db.Model(u).Preload("CalculationPlans").Where("user_id = ?", u.ID).Find(&calculationResults).Error
36 if err != nil {
37 return nil, err
38 }
39 return calculationResults, nil
40 }
41
42 func GetUsers(pageNum int, pageSize int, maps interface{}) (users []Users) {
43 db.Where(maps).Where("is_admin = false").Offset(pageNum).Limit(pageSize).Find(&users)
44
45 return
46 }
也就是说,42行的代码,也可以这样写:
42 func GetUsers(pageNum int, pageSize int, maps interface{}) (users []Users) {
var users []Users
43 db.Where(maps).Where("is_admin = false").Offset(pageNum).Limit(pageSize).Find(&users)
44
45 return users
46 }