Maison > développement back-end > Golang > Comment puis-je effectuer une conversion entre des structures Go à l'aide de l'intégration de champs ?

Comment puis-je effectuer une conversion entre des structures Go à l'aide de l'intégration de champs ?

Susan Sarandon
Libérer: 2024-10-27 01:58:30
original
821 Les gens l'ont consulté

How can I convert between Go structs using field embedding?

Conversion entre des structures Go

Lorsque vous travaillez avec plusieurs structures, il est souvent nécessaire de convertir les données d'une structure à une autre. Dans Go, cela peut être réalisé grâce à une technique appelée intégration de champs.

Considérez l'extrait de code suivant :

<code class="go">type A struct {
    a int
    b string
}

type B struct {
    A // field embedding of A
    c string
    // more fields
}</code>
Copier après la connexion

Dans cet exemple, la struct B intègre la struct A. Cela signifie que la struct B contient tous les champs de la structure A en plus de ses propres champs.

Pour convertir une valeur de type A en type B, vous pouvez simplement affecter les champs de A à ceux de B. Par exemple :

<code class="go">func main() {
    structA := A{a: 42, b: "foo"}

    // assign structA to the embedded A field of structB
    structB := B{A: structA}
}</code>
Copier après la connexion

Grâce à l'intégration de champs, vous pouvez facilement convertir entre les structures, éliminant ainsi le besoin de copier manuellement les champs ou de créer des méthodes de conversion.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal