English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
StructureEn Golang, c'est un type utilisateur défini qui nous permet de créer un ensemble d'éléments de différents types dans un seul unité. Toute entité réelle qui a un ensemble d'attributs ou de champs peut être représentée par une structure. Le langage Go permet les structures imbriquées. Une structure est un champ d'une autre structure, appelée structure imbriquée. En d'autres termes, une structure dans une autre structure est appelée structure imbriquée.
Syntax :
type struct_name_1 struct{}} // Champs } type struct_name_2 struct{}} nom_variable nom_structure_1 }
Permettons de discuter de ce concept à l'aide d'un exemple :
//Structure imbriquée package main import "fmt" //Création de structure type Author struct { name string branch string year int } //Création de structure imbriquée type HR struct { //Structure des champs details Author } func main() { // Initialisation des champs de structure result := HR{ details: Author{"Sona", "ECE", 2013, } //Affichage des valeurs de sortie fmt.Println("\nDétails de l'auteur") fmt.Println(result) }
Sortie :
Détails de l'auteur {{Sona ECE 2013}}
Exemple de structure imbriquée2:
package main import "fmt" //Création de structure type Student struct { name string branch string year int } //Création de structure imbriquée type Teacher struct { name string subject string exp int details Student } func main() { //Initialisation des champs de structure result := Teacher{ name: "Suman", subject: "Java", exp: int 5, details: Student{"Bongo", "CSE", 2, } fmt.Println("Détails complets du professeur") fmt.Println("Nom du professeur: ", result.name) fmt.Println("Discipline: ", result.subject) fmt.Println("Expérience: ", result.exp) fmt.Println("\nDétails de l'étudiant") fmt.Println("Nom de l'étudiant: ", result.details.name) fmt.Println("Nom du département de l'étudiant: ", result.details.branch) fmt.Println("Âge: ", result.details.year) }
Sortie :
Détails complets du professeur Le nom du professeur: Suman Discipline: Java Expérience: 5 Détails de l'étudiant Le nom de l'étudiant: Bongo Le nom du département de l'étudiant: CSE Age: 2