Menu
Coddy logo textTech

Initialisation de structures

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 98 sur 109.

Il existe plusieurs façons d'initialiser des structures en Go. Explorons les méthodes les plus courantes.

Créez une structure avec des noms de champs :

type Person struct {
    name string
    age  int
}

func main() {
    // Initialiser avec les noms de champs
    person1 := Person{name: "Alice", age: 30}
    fmt.Println(person1)
}

La sortie affiche notre structure initialisée :

{Alice 30}

Vous pouvez également initialiser une structure sans noms de champs, mais vous devez fournir les valeurs dans l'ordre :

person2 := Person{"Bob", 25}
fmt.Println(person2)

Résultat :

{Bob 25}

Créez une structure vide avec des valeurs par défaut :

person3 := Person{}
fmt.Println(person3)

Résultat :

{  0}
challenge icon

Défi

Débutant

Dans ce défi, vous allez vous entraîner à initialiser une structure en Go. Nous avons défini une structure Person avec des champs pour le nom, l'âge et si la personne est employée.

Votre tâche consiste à initialiser une nouvelle instance de la structure Person avec les informations suivantes :

  • Name: "Alice"
  • Age: 28
  • IsEmployed: true

Ensuite, nous afficherons les informations concernant cette personne.

Aide-mémoire

Il existe plusieurs façons d'initialiser des structures en Go :

Initialiser avec les noms de champs :

person1 := Person{name: "Alice", age: 30}

Initialiser sans les noms de champs (les valeurs doivent être dans l'ordre) :

person2 := Person{"Bob", 25}

Créer une structure vide avec des valeurs par défaut (zero values) :

person3 := Person{}

Essayez vous-même

package main

import "fmt"

// Définition de la structure Person
type Person struct {
	Name       string
	Age        int
	IsEmployed bool
}

func main() {
	// TODO: Initialiser une structure Person avec le nom "Alice", l'âge 28, et isEmployed à true
	// Utiliser soit les noms de champs, soit la syntaxe littérale de structure
	var alice Person
	
	// Afficher les informations de la personne
	fmt.Printf("Name: %s\n", alice.Name)
	fmt.Printf("Age: %d\n", alice.Age)
	fmt.Printf("Employed: %t\n", alice.IsEmployed)
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux