Structure imbriquée dans Golang

Une structure ou struct dans Golang est un type défini par l'utilisateur qui nous permet de créer un groupe d'éléments de différents types en une seule unité. Toute entité du monde réel possédant un ensemble de propriétés ou de champs peut être représentée sous la forme d'une structure.

Structure imbriquée dans Golang

Comment utiliser les structures imbriquées dans Golang

Le langage Go permet des structures imbriquées. Une structure qui est un champ d’une autre structure est appelée une structure imbriquée. En d’autres termes, une structure à l’intérieur d’une autre structure est appelée structure imbriquée. Syntaxe:

type struct_name_1 struct{
  // Các trường
} 
type struct_name_2 struct{
  variable_name  struct_name_1

}

Considérez l’exemple suivant pour comprendre la structure imbriquée dans Golang :

Exemple 1 :

// Chương trình Go minh hoạc
// cấu trúc lồng nhau
package main

import "fmt"

// Tạo cấu trúc
type Author struct {
	name string
	branch string
	year int
}

// Tạo cấu trúc lòng nhau
type HR struct {

	// cấu trúc là một trường
	details Author
}

func main() {

	// Khởi tạo các trường
	// của cấu trúc
	result := HR{
	
		details: Author{"Sona", "ECE", 2013},
	}

	// Hiện giá trị
	fmt.Println("\nDetails of Author")
	fmt.Println(result)
}

Résultat:

Details of Author
{{Sona ECE 2013}}

Exemple 2 :

// Chương trình Golang minh họa
// cấu trúc lồng nhau
package main

import "fmt"

// Tạo cấu trúc
type Student struct {
	name string
	branch string
	year int
}

// Tạo cấu trúc lồng nhau
type Teacher struct {
	name string
	subject string
	exp	 int
	details Student
}

func main() {

	// Khởi tạo các trường
	// của cấu trúc
	result := Teacher{
		name: "Suman",
		subject: "Java",
		exp:	 5,
		details: Student{"Bongo", "CSE", 2},
	}

	// Hiện giá trị
	fmt.Println("Details of the Teacher")
	fmt.Println("Teacher's name: ", result.name)
	fmt.Println("Subject: ", result.subject)
	fmt.Println("Experience: ", result.exp)

	fmt.Println("\nDetails of Student")
	fmt.Println("Student's name: ", result.details.name)
	fmt.Println("Student's branch name: ", result.details.branch)
	fmt.Println("Year: ", result.details.year)
}

Résultat:

Details of the Teacher
Teacher's name:  Suman
Subject:  Java
Experience:  5

Details of Student
Student's name:  Bongo
Student's branch name:  CSE
Year:  2

Exemple 3 :

En Go, une structure peut avoir des champs qui sont eux-mêmes des structures, appelées structures imbriquées. Voici un exemple de structure qui possède une structure imbriquée :

package main

import (
	"fmt"
)

type Address struct {
	Street	 string
	City	 string
	State	 string
	PostalCode string
}

type Person struct {
	FirstName string
	LastName string
	Age	 int
	Address Address
}

func main() {
	p := Person{
		FirstName: "John",
		LastName: "Doe",
		Age:	 30,
		Address: Address{
			Street:	 "123 Main St",
			City:	 "Anytown",
			State:	 "CA",
			PostalCode: "12345",
		},
	}

	fmt.Println(p.FirstName, p.LastName)
	fmt.Println("Age:", p.Age)
	fmt.Println("Address:")
	fmt.Println("Street:", p.Address.Street)
	fmt.Println("City:", p.Address.City)
	fmt.Println("State:", p.Address.State)
	fmt.Println("Postal Code:", p.Address.PostalCode)
}

Résultat:

John Doe
Age: 30
Address:
Street: 123 Main St
City: Anytown
State: CA
Postal Code: 12345

Ici, nous définissons deux types de structures : Person et Address. La personne possède un champ de structure imbriqué appelé Adresse. Dans la fonction principale, nous créons une nouvelle instance Person avec un champ Address. Nous imprimons ensuite les différentes valeurs de champ des structures Person et Address en utilisant la notation par points pour accéder aux champs imbriqués.

Sign up and earn $1000 a day ⋙

Leave a Comment

Mots-clés en Go

Mots-clés en Go

Mot-clé - Les mots-clés sont des mots dans une langue qui sont utilisés pour un processus interne ou qui représentent une action prédéfinie. Voici ce que vous devez savoir sur les mots-clés dans Golang.

Types de données dans Golang

Types de données dans Golang

Le type de données spécifie le type de données qu'une variable Go valide peut contenir. Dans le langage Go, les types sont divisés en quatre catégories comme suit :

Arguments de fonction dans Golang

Arguments de fonction dans Golang

Go prend en charge deux manières principales de transmettre des arguments : le passage par valeur et le passage par référence. Go utilise le passage par valeur par défaut.

Fonction renvoyant plusieurs valeurs en Golang

Fonction renvoyant plusieurs valeurs en Golang

Dans le langage Go, vous êtes autorisé à renvoyer plusieurs valeurs à partir d'une fonction, à l'aide de l'instruction return. En d’autres termes, dans une fonction, une instruction de retour peut renvoyer plusieurs valeurs.

Instruction Switch en Go

Instruction Switch en Go

Golang, comme la plupart des autres langages de programmation, possède une instruction switch. Voici comment utiliser l'instruction switch dans Golang.

Cas à connaître lors de lutilisation dinstructions de sélection en Golang

Cas à connaître lors de lutilisation dinstructions de sélection en Golang

Dans cet article, nous allons apprendre à utiliser le cas par défaut pour éviter le blocage. Mais d'abord, découvrons quel est le cas de blocage lors de l'utilisation de la commande Golang select ?

Structures et champs anonymes dans Golang

Structures et champs anonymes dans Golang

Les structures anonymes dans Golang sont des structures temporaires sans nom utilisées à des fins ponctuelles, tandis que les champs anonymes permettent l'intégration de champs sans nom.

Comment utiliser Rune dans Golang

Comment utiliser Rune dans Golang

Que sont les runes dans Golang ? Comment utiliser Rune dans Golang ? L'article vous donnera la réponse.

Comment utiliser les opérateurs dans Golang

Comment utiliser les opérateurs dans Golang

Les opérateurs nous permettent d’effectuer différents types d’opérations sur les opérandes. Dans le langage Go, les opérateurs peuvent être classés en fonction de leurs différentes fonctions.

Identifiant vide dans Golang

Identifiant vide dans Golang

_(underscore) dans Golang est appelé identifiant vide. L'identifiant est un nom défini par l'utilisateur des composants du programme utilisés à des fins d'identification.

Comment créer un programme de base en Golang

Comment créer un programme de base en Golang

Bonjour le monde! est le premier programme de base dans tout langage de programmation. Vous pouvez écrire ce premier programme en Golang en suivant les étapes ci-dessous.

Comment installer Go sur Windows

Comment installer Go sur Windows

Golang peut être facilement installé sur Windows. Vous trouverez ci-dessous un guide détaillé étape par étape pour installer Golang sur Windows.

Méthodes portant le même nom dans Golang

Méthodes portant le même nom dans Golang

Golang permet de créer deux ou plusieurs méthodes portant le même nom dans le même package, mais les récepteurs de ces méthodes doivent être de types différents.

Fonctions en Go

Fonctions en Go

En Go, les fonctions sont des blocs de code qui exécutent des tâches spécifiques, qui peuvent être réutilisées dans tout le programme pour économiser de la mémoire, améliorer la lisibilité et gagner du temps.

Portée variable en Go

Portée variable en Go

La portée d'une variable dans Golang détermine la partie du programme où cette variable est accessible. En Go, tous les identifiants ont une portée lexicale qui est déterminée au moment de la compilation.

Health risks of Vitamin B12 deficiency

Health risks of Vitamin B12 deficiency

Your red blood cells, nerves, and brain all depend on vitamin B12. But some people dont get enough of this nutrient, and a vitamin B12 deficiency can cause a number of health problems.

ChatGPT plante globalement

ChatGPT plante globalement

Le matin du 22 novembre, le chatbot ChatGPT d'OpenAI a rencontré de nombreux problèmes et de nombreux utilisateurs dans le monde n'ont pas pu utiliser cette application d'IA.

Comment utiliser WiFi Analyzer pour booster votre connexion Wi-Fi

Comment utiliser WiFi Analyzer pour booster votre connexion Wi-Fi

Le simple achat d’un nouveau routeur Wi-Fi ne suffit pas à booster votre réseau. Pour tirer le meilleur parti de votre Wi-Fi, vous devez vous assurer que vous obtenez la meilleure portée, le meilleur signal et la meilleure fréquence.

Unités de mesure de base en informatique

Unités de mesure de base en informatique

Bit signifie Binary Digit, qui est le terme désignant la plus petite partie de la mémoire d'un ordinateur capable de stocker l'un des deux états d'information : 0 ou 1 (qui peut être compris comme l'état activé ou désactivé d'un transistor dans un ordinateur).

Comment améliorer vos habitudes de prise de notes grâce aux rappels

Comment améliorer vos habitudes de prise de notes grâce aux rappels

Une bonne habitude de mémorisation commence par des rappels : ils arrivent au bon moment pour capturer ces pensées fugaces.

7 applications gratuites qui amélioreront instantanément vos photos sur smartphone

7 applications gratuites qui amélioreront instantanément vos photos sur smartphone

Il existe encore de nombreux outils de photographie gratuits et puissants que vous pouvez utiliser pour améliorer vos photos.

Astuces pour rendre le widget de recherche Google plus utile

Astuces pour rendre le widget de recherche Google plus utile

Le widget Recherche Google vous donne un accès rapide à la recherche Google et au flux Discover, ainsi qu'à la recherche vocale et à Google Lens.

Comment se connecter et désactiver le rappel dexpiration du mot de passe

Comment se connecter et désactiver le rappel dexpiration du mot de passe

Si vous rencontrez le message Votre mot de passe a expiré et doit être modifié sur l'écran de connexion Windows, c'est parce que les mots de passe des comptes locaux Windows expirent tous les 42 jours par défaut.

Comment convertir des images WebP en PNG, JPG sur Chrome, Coc Coc

Comment convertir des images WebP en PNG, JPG sur Chrome, Coc Coc

Pour convertir des images WebP aux formats PNG et JPG, nous pouvons le faire de différentes manières, par exemple en le faisant directement sur l'URL de l'image ou en utilisant des outils de conversion d'image.

4 façons dutiliser le mode Canvas de ChatGPT

4 façons dutiliser le mode Canvas de ChatGPT

Le nouveau mode Canvas de ChatGPT ajoute une nouvelle dimension à l'écriture et à l'édition dans le moteur d'IA générative leader au monde.

Ce que les gens détestent le plus dans les éditeurs de photos IA

Ce que les gens détestent le plus dans les éditeurs de photos IA

Bien que les éditeurs de photos IA puissent considérablement rationaliser votre flux de travail d'édition, ils sont loin d'être parfaits. Il y a quelques choses que les utilisateurs n'aiment pas à leur sujet et dans l'article d'aujourd'hui, vous découvrirez lesquelles.

Nintendo révolutionne la façon dont les jeux numériques sont partagés avec les cartes de jeu virtuelles

Nintendo révolutionne la façon dont les jeux numériques sont partagés avec les cartes de jeu virtuelles

Dans une démarche qui change complètement la façon dont les jeux numériques sont distribués, Nintendo a officiellement présenté le système de cartes de jeu virtuelles lors de l'événement Nintendo Direct.

Instructions pour envoyer des fichiers sur Messenger sur téléphone et ordinateur

Instructions pour envoyer des fichiers sur Messenger sur téléphone et ordinateur

En plus d'envoyer des photos sur Messenger, les utilisateurs peuvent désormais envoyer des fichiers sur l'application à d'autres, avec tous les formats de fichiers de documents tels que pdf, doc, xlx...

Comment ajouter automatiquement des sous-titres et des paroles sur CapCut

Comment ajouter automatiquement des sous-titres et des paroles sur CapCut

CapCut a également la possibilité d'insérer des sous-titres vidéo comme certaines applications de sous-titrage vidéo célèbres. L'application reconnaît ensuite automatiquement le son et la voix dans la vidéo, puis les affiche dans la vidéo.

Différence entre le Wi-Fi 2,4 GHz et 5 GHz

Différence entre le Wi-Fi 2,4 GHz et 5 GHz

Vous venez de décider de remplacer votre ancien routeur. Lorsque vous déballez votre nouveau routeur sans fil, vous vous demandez peut-être pourquoi il existe deux réseaux : 2,4 GHz et 5 GHz. Le réseau 5 GHz est-il donc plus puissant ? Quelle est la différence entre eux ?