Maison > développement back-end > Golang > Comment attribuer des valeurs entre des structures Go similaires avec des types différents ?

Comment attribuer des valeurs entre des structures Go similaires avec des types différents ?

DDD
Libérer: 2024-12-13 20:32:18
original
696 Les gens l'ont consulté

How to Assign Values Between Similar Go Structs with Different Types?

Attribuer des valeurs entre des structures similaires avec des types distincts

Avoir des structures avec des membres identiques mais des types différents peut créer le besoin de transférer des données entre elles. Dans de tels cas, une conversion de type peut fournir une solution.

Considérez les définitions de structure suivantes :

type Common struct {
    Gender int
    From   string
    To     string
}

type Foo struct {
    Id    string
    Name  string
    Extra Common
}

type Bar struct {
    Id    string
    Name  string
    Extra Common
}
Copier après la connexion

Pour transférer des valeurs d'une structure Foo vers une structure Bar, vous pouvez utiliser un type conversion :

foo := Foo{Id: "123", Name: "Joe"}
bar := Bar(foo)
Copier après la connexion

Dans ce cas, la conversion fonctionne car les types sous-jacents de Foo et Bar sont identiques à l'exception de leurs balises struct. La conversion attribue automatiquement les valeurs du membre commun de foo au membre correspondant de bar.

Pour référence, un exemple de terrain de jeu est fourni : [Exemple de terrain de jeu](https://play.golang.org/p /FmF4FjJ0B4n)

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal