Maison > développement back-end > Golang > Quel est le but des traits de soulignement avant les noms de fonctions dans les balises Go Struct ?

Quel est le but des traits de soulignement avant les noms de fonctions dans les balises Go Struct ?

Susan Sarandon
Libérer: 2024-12-22 10:57:16
original
836 Les gens l'ont consulté

What's the Purpose of Underscores Before Function Names in Go Struct Tags?

Go Struct Tags avec des traits de soulignement avant les noms de fonctions

Dans Go, les champs struct peuvent être annotés avec des balises struct pour fournir des informations supplémentaires au compilateur ou à des outils externes. Cependant, l'utilisation de traits de soulignement avant les noms de fonctions dans les balises struct, comme le montre l'exemple ci-dessous, peut prêter à confusion.

type CustomLabel struct {
    core.QObject

    _ func() `constructor:"init"`
    _ string `property:"text"`
}
Copier après la connexion

Ces traits de soulignement indiquent des champs vides. Ils ne peuvent pas être référencés directement, mais ils affectent la disposition de la mémoire de la structure. Dans ce cas, ils sont utilisés à des fins d'alignement.

Les champs vides peuvent être utilisés pour aligner les champs suivants sur des positions de mémoire spécifiques ou pour faire correspondre la disposition des données d'un autre système. Cela permet un transfert efficace des données vers et depuis d'autres systèmes en une seule étape.

Remarque : Bien que les champs vides puissent être utiles dans certaines situations, ils doivent être utilisés avec parcimonie car ils ajoutent une surcharge inutile. à toutes les instances de la structure même si elles ne peuvent pas être référencées.

Pour un aperçu complet des balises struct, reportez-vous à la question « Quelle(s) utilisation(s) les balises dans Partir ?"

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