Structures et champs anonymes dans Golang

Dans Golang , les structures (ou structs) nous permettent de regrouper des éléments de différents types en une seule unité, ce qui est utile pour modéliser des entités du monde réel. 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.

Structures et champs anonymes dans Golang

Par exemple:

package main
import "fmt"

// struct học sinh với cấu trúc và trường ẩn danh
type Student struct {
    struct {    // Cấu trúc bên trong ẩn danh cho thông tin cá nhân
        name string
        enrollment int
    }
    GPA float64  // Trường chuẩn
}

func main() {
    student := Student{
        struct {
            name string
            enrollment int
        }{
            name: "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    fmt.Println("Name:", student.name)
    fmt.Println("Enrollment:", student.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Syntaxe:

variable := struct {
    field1 dataType1
    field2 dataType2                                                          # Cấu trúc ẩn danh
    // Trường bổ sung khi cần
}{value1, value2}


type StructName struct {
    dataType1
    dataType2                                                                    # Trường ẩn danh                                        
    // Trường ẩn danh bổ sung
}

Structures anonymes en Go

Les structures anonymes en Go sont définies sans nom et sont utiles pour créer des structures temporaires et jetables. Voici la syntaxe et l'exemple de code.

Syntaxe:

variable := struct {
    field1 dataType1
    field2 dataType2
    // Các trường bổ sung khi cần
}{value1, value2}

Par exemple:

package main
import "fmt"
// Cấu trúc sinh viên với cấu trúc bên trong ẩn danh cho thông tin cá nhân
type Student struct {
    personalDetails struct { // Cấu trúc ẩn danh bên trong cho thông tin cá nhân
        name       string
        enrollment int
    }
    GPA float64 // Trường chuẩn
}
func main() {
    // Khởi tạo cấu trúc bên trong cho student
    student := Student{
        personalDetails: struct {
            name       string
            enrollment int
        }{
            name:       "A",
            enrollment: 12345,
        },
        GPA: 3.8,
    }
    // Hiện giá trị
    fmt.Println("Name:", student.personalDetails.name)
    fmt.Println("Enrollment:", student.personalDetails.enrollment)
    fmt.Println("GPA:", student.GPA)
}

Résultat:

Name: A
Enrollment: 12345
GPA: 3.8

Ce code définit une structure Student avec une structure personalDetails anonyme à l'intérieur, stockant le nom et les informations d'inscription. Initialisez ensuite l'étudiant avec les valeurs de ces champs et imprimez-les.

Champs anonymes

Les champs anonymes dans Go vous permettent de définir des champs sans noms explicites, seuls leurs types sont spécifiés. Ceci est utile lorsque les champs suivent naturellement le nom du type.

Syntaxe

type StructName struct {
    dataType1
    dataType2
    // Additional anonymous fields
}

Par exemple:

package main
import "fmt"

// Cấu trúc học sinh bằng các trường ẩn danh
type Student struct {
    int     // Số đăng ký (trường ẩn danh)
    string  // Tên trường ẩn danh
    float64 // GPA (trường ẩn danh)
}

func main() {
    // Khởi tạo struct học sinh với các trường ẩn danh
    student := Student{12345, "A", 3.8}

    // Hiện giá trị
    fmt.Println("Enrollment:", student.int)
    fmt.Println("Name:", student.string)
    fmt.Println("GPA:", student.float64)
}

Résultat:

Enrollment: 12345
Name: A
GPA: 3.8

Ici, les types de données ( int, string, float64 ) agissent comme des noms de champs, donc l'accès aux valeurs dépend des types.

Points importants à retenir concernant les champs anonymes dans Golang

1. Exigence unique : vous ne pouvez pas utiliser deux champs du même type dans une même structure. Par exemple:

type InvalidStudent struct {
    int
    int // Error: duplicate type
}

2. Combinaison de champs nommés et anonymes : vous pouvez combiner des champs anonymes et nommés dans une structure.

type Student struct {
    id int // Named field
    int    // Anonymous field
}

Laisser un commentaire

10 idées faciles de décoration d'Halloween pour une chambre d'étudiant qui n'abîmeront pas les murs

10 idées faciles de décoration d'Halloween pour une chambre d'étudiant qui n'abîmeront pas les murs

Créez une chambre d'étudiant festive grâce à 10 idées de décorations d'Halloween sans danger pour les murs, des conseils d'affichage adaptés aux locataires, des vérifications de sécurité incendie et des conseils de démontage.

Organisez une soirée films d'horreur nostalgiques des années 80 grâce à ces idées !

Organisez une soirée films d'horreur nostalgiques des années 80 grâce à ces idées !

Organisez une soirée films d'horreur des années 80 avec un niveau de peur clairement défini, une décoration rétro, des tenues inspirées de l'époque, des en-cas faciles à préparer et des jeux amusants pour la soirée cinéma.

La tendance des méchants : Les meilleurs costumes sombres pour Halloween 2026

La tendance des méchants : Les meilleurs costumes sombres pour Halloween 2026

Créez un look sombre et sophistiqué pour Halloween 2026 grâce à six idées de costumes inspirés des méchants, des conseils de style pratiques, des indications budgétaires et des vérifications de sécurité.

Une chasse aux bonbons adaptée aux personnes allergiques : le projet de la citrouille turquoise en 2026

Une chasse aux bonbons adaptée aux personnes allergiques : le projet de la citrouille turquoise en 2026

Découvrez ce que signifie le projet Teal Pumpkin en 2026, comment les hôtes peuvent offrir des friandises non alimentaires distinctes et comment les familles peuvent planifier des itinéraires et examiner les bonbons en toute sécurité.

La chasse aux bonbons en 2026 : ce qui change pour la nuit d’Halloween

La chasse aux bonbons en 2026 : ce qui change pour la nuit d’Halloween

Découvrez ce que révèle le dernier sondage d'Halloween 2026 sur la collecte de bonbons, les événements communautaires et les moyens pratiques d'organiser une sortie de quartier plus sûre.

Comment organiser une fête de la lune d'Halloween sur le thème de la spiritualité étoilée

Comment organiser une fête de la lune d'Halloween sur le thème de la spiritualité étoilée

Organisez une fête d'Halloween au clair de lune empreinte de réflexion, avec possibilité de méditation, observation simple des étoiles, indications précises sur le ciel de 2026, cadre spirituel respectueux et éclairage sécuritaire.

CAF : comment contester une dette et respecter les délais de recours

CAF : comment contester une dette et respecter les délais de recours

Dette Caf contestée : distinguez rectification, recours amiable et remise de dette, vérifiez le délai applicable et adressez votre demande au bon organisme.

Comment jeter une batterie externe à Paris ? Comparer magasin, Trimobile et Espace tri

Comment jeter une batterie externe à Paris ? Comparer magasin, Trimobile et Espace tri

À Paris, une batterie externe usagée va dans une collecte dédiée. Comparez magasin, Trimobile et Espace tri, avec les précautions si elle est endommagée.

Changement d’adresse à Amiens : quelles démarches effectuer avant et après le déménagement ?

Changement d’adresse à Amiens : quelles démarches effectuer avant et après le déménagement ?

Impôts, carte grise, Caf, collecte des déchets et stationnement : suivez les étapes essentielles pour signaler votre changement d’adresse à Amiens.

Comment se débarrasser d’un ordinateur à Angers ? Réparation, reprise ou déchèterie

Comment se débarrasser d’un ordinateur à Angers ? Réparation, reprise ou déchèterie

À Angers, comparez don, réparation, reprise en magasin et déchèterie pour un ordinateur usagé. Accès par badge, horaires et effacement des données.