English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base en Golang

Instructions de contrôle en Golang

Fonctions & méthodes en Golang

Structures en Golang

Coupes & tableaux en Golang

Chains de caractères (String) en Golang

Pointeurs en Golang

Interfaces en Golang

Concurrence en Golang

Exceptions (Error) en Golang

Autres éléments divers en Golang

Go Anonymous Structure and Field

Les structures en Golang sont des types définis par l'utilisateur, qui permettent de créer un ensemble d'éléments de types différents dans un seul élément. Toute entité réelle qui possède un ensemble d'attributs ou de champs peut être représentée par une structure.

Structure anonyme

En langage Go, il est permis de créer des structures anormales. Les structures anormales sont des structures sans nom. Elles sont utiles lorsque vous devez créer une structure utilisable à court terme. Vous pouvez créer une structure anonyme en utilisant la syntaxe suivante :

variable_name := struct{
// fields
}{// Field_values}

Permettons de nous aider d'un exemple pour discuter de ce concept :

//Concept de structure anonyme
package main 
  
import \
  
func main() { 
  
    // Créer et initialiser une structure anonyme
    Element := struct { 
        name      string 
        branch    string 
        language  string 
        Particles int
    }{ 
        name:      "Zhang San", 
        branch:    "Département de développement", 
        language:  "C"++", 
        Particles : 498, 
    } 
  
    //Afficher la structure anonyme
    fmt.Println(Element) 
}

Sortie :

{Zhang San Département de développement C++ 498}

Champ anonyme

Dans les structures Go, il est permis de créer des champs anormaux. Les champs anormaux sont ceux qui ne contiennent aucun nom. Vous n'avez besoin que de mentionner le type du champ, puis Go utilisera automatiquement ce type en tant que nom du champ. Vous pouvez créer un champ anonyme de structure en utilisant la syntaxe suivante :

type struct_name struct{
    int
    bool
    float64
}

Points importants :

  • Dans une structure, il n'est pas permis de créer deux ou plusieurs champs du même type, comme suit :

    type student struct{
    int
    int
    }

    Si vous essayez de le faire, le compilateur lancera une erreur.

  • Permet de combiner des champs anormaux et des champs nommés, comme suit :

    type student struct{
     name int
     price int
     string
    }
  • Permettons de nous aider d'un exemple pour discuter du concept de champ anonyme :

    package main 
      
    import \
      
    //Créer un champ anonyme de structure 
    type student struct { 
        int
        string 
        float64 
    } 
      
    // Fonction principale 
    func main() { 
      
        // Affecter les valeurs aux champs du champ anonyme, de la structure étudiant
        value := student{123, "Bud", 8900.23} 
      
        fmt.Println("Nombre d'admissions : ", value.int) 
        fmt.Println("Nom d'étudiant : ", value.string) 
        fmt.Println("Prix du forfait : ", value.float64) 
    }

    Sortie :

    Nombre d'admissions :  123
    Nom d'étudiant :  Bud
    Package Price :  8900.23