Когда это хорошо идея вернуть указатель на структуру?

Я изучаю Go и немного не понимаю, когда использовать указатели. В частности, при возврате structиз функции, когда уместно вернуть сам экземпляр структуры, а когда уместно вернуть указатель на структуру?

Пример кода:

type Car struct {
  make string
  model string
}

func Whatever() {
  var car Car

  car := Car{"honda", "civic"}

  // ...

  return car
}

В каких ситуациях мне хотелось бы вернуть указатель, а в каких нет? Есть ли хорошее эмпирическое правило?

9
задан Praetorian 11 June 2012 в 20:19
поделиться