Chapitre 5 : Les structures
Exemple de base
En Go, une struct (structure) est une collection personnalisée de types de données. Elle permet de combiner des éléments de différents types dans une seule structure de données. L'exemple qui suit démontre comment les structs peuvent être utilisées pour créer et gérer des instances d'une personne.
Voici un exemple minimal d'utilisation d'une struct appelée Person qui contient les champs Name et Age:
Nous définissons un nouveau type appelé
Personqui est une struct contenant deux champs :Namede typestringetAgede typeint.Dans la fonction
main, nous créons une nouvelle instance dePersonet l'initialisons avec des valeurs pourNameetAge.Nous utilisons l'opérateur
.pour accéder aux champs de notre instance dePerson, puis nous imprimons ces valeurs avecfmt.Println.Enfin, nous utilisons l'opérateur '.' pour modifier les valeurs des champs
NameetAgedans notre instance dePerson.Nous pouvons aussi imprimer une structure directement dans un
fmt.Println, mais la sortie peut être ambiguë, comme le montre la dernière sortie dans l'exemple : à partir d'uniquement du résultat de la sortie, il n'est pas clair s'il y a 2 ou 3 champs dans la structure.
Puisque les champs Name et Age commencent par des majuscules, ils sont publics. S'ils commençaient par une minuscule, ils seraient privés, donc accessibles seulement au code situé dans le même paquet (package) que sa déclaration. En Go, l'accessibilité (public vs. privé) est toujours définie au niveau du paquet.