Il semble inutile d'être utilisé dans des constructions de langage primitif, comme vous ne pouvez pas spécifier toute sorte de valeursQuand `new` devrait-il être utilisé dans Go?
func main() {
y := new([]float)
fmt.Printf("Len = %d", len(*y)) // => Len = 0
}
Pour stucts il fait un plus peu sens, mais quelle est la différence entre dire y := new(my_stuct)
et la apparemment plus concis y := &my_struct
? Et comme tout ce que vous créez est basé sur ces primitives, elles seront initialisées auxdites valeurs nulles. Alors, quel est le point? Quand voudriez-vous utiliser new()
?
Désolé pour la question très-débutant, mais la documentation n'est pas toujours aussi claire.
« Quelle est la différence entre ... » 'new' est utilisé sur un type. '&' est utilisé sur une valeur – newacct