Maison >développement back-end >Golang >Comment puis-je contrôler quels champs de structure sont exportés dans Go ?
Lorsque vous utilisez des structures pour représenter des données dans Go, il est important de prendre en compte la capitalisation des noms de champs. Par convention, seuls les champs commençant par une majuscule sont exportés, les rendant visibles en dehors du package actuel.
Dans le code fourni, la structure Person a un champ nommé Age avec une lettre majuscule, tandis que le nom est en minuscule. Par conséquent, seul le champ Age est exporté lorsque la structure est transmise à la méthode PostDocument de la bibliothèque CouchDB.
Le même principe s'applique lors du marshaling JSON à l'aide du package json. Seuls les champs exportés (commençant par une lettre majuscule) seront inclus dans la sortie. Ce comportement est décrit dans la spécification du langage Go : http://golang.org/ref/spec#Exported_identifiers.
Pour inclure des champs en minuscules dans la base de données ou la sortie JSON, utilisez des "tags" dans la définition de la structure. Par exemple :
type Sample struct { Name string `json:"name"` Age int `json:"age"` }
Les balises fournissent un mappage explicite entre les noms de champs exportés (Nom et Âge) et leurs équivalents minuscules (nom et âge).
En utilisant des balises ou en suivant les Convention d'utilisation des noms de champs en majuscules pour les champs exportés, vous pouvez vous assurer que tous les champs de vos structures sont traités correctement lors de l'interaction avec des bibliothèques tierces ou de l'exécution d'opérations JSON.
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!