Я понимаю, что 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
недостаточно?
Обновление
Я попытался вернуть созданный объект для простой структуры, и это нормально. Поэтому мне интересно, является ли возврат адреса стандартным способом конструктора или что-то в этом роде.
Спасибо.