Quelles sont les structures à Golang

Quelles Sont Les Structures A Golang



En langage Go, une structure est un ensemble de variables (champs) regroupées sous un même nom. Il s'agit d'un type de données composite qui nous permet de créer des structures de données personnalisées pour contenir des informations connexes. Les structures en Go sont comme des classes dans la programmation orientée objet comme C et C++, mais elles ne prennent pas en charge l'héritage. Au lieu de cela, ils s'appuient sur la composition pour réaliser la réutilisation du code. Cet article couvre les structures dans Golang et comment nous pouvons déclarer et accéder aux membres de la structure.

Qu'est-ce qu'une structure à Golang

Dans Golang, une structure est un type de données composite composé de zéro ou plusieurs champs nommés, chacun ayant un type spécifique. Les champs d'une structure peuvent être de n'importe quel type, y compris d'autres structures, tableaux, fonctions ou interfaces.







Voici un exemple de structure en Golang :



taper Structure de personne {
chaîne FullName
ans int
Adresse de l'emplacement
}
taper Structure d'adresse {
Chaîne de nom de rue
CityName    chaîne
Chaîne CountryName
}


Ici, nous avons défini une structure Person qui comporte trois champs : FullName, YearsOld et Location. Le champ Emplacement est lui-même une structure qui comporte trois champs : StreetName, CityName et CountryName.



Comment déclarer Struct dans Golang

Nous pouvons déclarer une structure dans Golang en utilisant le taper mot-clé. Le nom de la structure est défini après le taper mot-clé, et ses champs sont entourés d'accolades { } . Voici la syntaxe pour déclarer une structure dans Go :





taper StructName struct {
NomChamp1 TypeChamp1
NomChamp2 TypeChamp2
...
}


Vous trouverez ci-dessous un exemple de déclaration d'une structure nommée Person avec deux champs name et age de types string et int respectivement :

taper Structure de personne {
chaîne de nom
âge entier
}


Dans le code ci-dessus, nous avons utilisé le taper mot-clé pour déclarer une nouvelle structure nommée Personne avec deux champs nom de type chaîne et âge de type int. Les champs sont séparés par un Nouvelle ligne personnage mais un point-virgule (;) peut également être utilisé pour les séparer.



Comment accéder au membre Struct dans Golang

Pour accéder aux champs d'une instance de struct en langage Go point (“.””) l'opérateur est utilisé. Cet opérateur point est suivi d'un nom de champ. Voici un exemple d'accès aux champs name et age d'une instance de structure Person :

// Créer un nouveau ` Personne ` instance de structure avec le nom 'kache' Et l'âge 24
kash := Personne { nom: 'kache' , âge: 24 }

// Accéder aux champs de la ` casser ` instance de structure
fmt.Println ( kash.nom ) // Sortir: 'kache'
fmt.Println ( kash.age ) // Sortir: 24


Dans le code ci-dessus, nous avons créé une nouvelle instance de structure Person nommée kash avec le nom casser Et l'âge 24 . Nous accédons ensuite aux champs de nom et d'âge de l'instance de structure kash en utilisant le (“.””) opérateur et imprimez-les sur la console.

Il est important de noter que les champs d'une instance de struct sont accessibles en utilisant la notation par points et non le flèche notation (->) utilisé dans d'autres langages de programmation. La notation par points est utilisée de manière cohérente dans Go pour accéder aux champs des structures, ainsi qu'aux propriétés et méthodes d'autres types.

Exemple de code de déclaration et d'accès au membre de structure dans Golang

Vous trouverez ci-dessous un exemple complet de déclaration de la structure Person dans Go et d'impression de ses valeurs à l'écran :

paquet principal
importer 'fmt'
taper Structure de personne {
chaîne de nom
âge entier
}
fonction principale ( ) {
// Créer un nouveau ` Personne ` instance de structure avec le nom 'kache' Et l'âge 24
kash := Personne { nom: 'kache' , âge: 24 }
// Imprimez le ` nom ` et ` âge ` de ` casser ` instance de structure à la console
fmt.Printf ( 'Des noms \n ' , kash.nom )
fmt.Printf ( 'Vieilli \n ' , kash.age )
}


Dans le code écrit ci-dessus, nous avons d'abord déclaré le Personne structure. Cette structure contient deux champs qui sont le nom et l'âge. Après cela, nous avons créé une nouvelle instance de structure Person nommée kash avec le nom casser Et l'âge 24 .

Pour afficher les champs de nom et d'âge, nous utilisons le fmt.Printf fonction avec le %s et %d spécificateurs de format pour imprimer les champs de nom et d'âge, respectivement.

Après l'exécution, le code suivant la sortie apparaît sur la console :

Comment passer Struct en tant qu'arguments de fonction

Pour passer un struct comme argument de fonction dans Go, nous devons simplement spécifier le type de struct comme type de paramètre dans la signature de la fonction, puis passer l'instance de struct comme argument lors de l'appel de la fonction.

Exemple de code

L'exemple ci-dessous montre comment passer une instance de struct Person comme argument à une fonction en langage Go et afficher ses valeurs à l'écran :

paquet principal
importer 'fmt'
// Déclarez une structure nommée ` Personne ` avec deux champs : ` nom ` et ` âge `
taper Structure de personne {
chaîne de nom
âge entier
}
// Déclarer un fonction nommé ` printPerson ` ça prend un ` Personne ` structure comme une dispute
func printPerson ( p Personne ) {
fmt.Printf ( 'Des noms \n ' , p.name )
fmt.Printf ( 'Vieilli \n ' , page )
}
fonction principale ( ) {
// Créer un nouveau ` Personne ` instance de structure avec le nom 'kache' Et l'âge 24
kash := Personne { nom: 'kache' , âge: 24 }
// Passe le ` casser ` instance de structure à la ` printPerson ` fonction
printPerson ( casser )
}


Dans le code ci-dessus, nous avons d'abord déclaré la structure Person avec deux champs, nom, et âge . On déclare alors une fonction nommée printPerson qui prend une structure Person comme argument et imprime ses champs de nom et d'âge à l'écran à l'aide de la fonction fmt.Printf.

Dans la fonction principale, nous avons créé une nouvelle instance de structure Person nommée kash avec le nom casser et 24 ans. Nous passons ensuite l'instance de structure kash à la fonction printPerson en appelant la fonction printPerson et en passant casser comme argument.

La sortie suivante peut être vue sur la console après avoir exécuté le code ci-dessus :

Conclusion

Dans Golang, les structures peuvent représenter des types de données complexes et encapsuler des données associées. Une structure est un type de données composé d'un ou plusieurs champs, chacun d'eux recevant un nom et un type spécifiques. Les champs d'une structure peuvent être de n'importe quel type, y compris d'autres structures, tableaux, fonctions ou interfaces. Cet article traite en détail des structures Go. Pour plus d'informations sur la déclaration et l'accès aux éléments de structure, lisez l'article.