Я понимаю, что Go не имеет конструкторов, а вместо него используется New func, но согласно этот пример.
func NewFile(fd int, name string) *File {
if fd < 0 {
return nil
}
f := File{fd, name, nil, 0}
return &f
}
Они всегда возвращают &f. Почему просто просто вернуть File недостаточно?
Обновление
Я попытался вернуть созданный объект для простой структуры, и это нормально. Поэтому мне интересно, является ли возврат адреса стандартным способом конструктора или что-то в этом роде.
Спасибо.