Maison > développement back-end > Golang > Comment puis-je déterminer si une propriété Struct s'est vu attribuer une valeur dans Go ?

Comment puis-je déterminer si une propriété Struct s'est vu attribuer une valeur dans Go ?

Mary-Kate Olsen
Libérer: 2024-12-30 03:55:10
original
723 Les gens l'ont consulté

How Can I Determine if a Struct Property Has Been Assigned a Value in Go?

Détermination de l'attribution des propriétés dans les structures

De nombreux scénarios de programmation impliquent de travailler avec des structures et leurs propriétés. Une question courante qui se pose est de savoir comment déterminer si une propriété spécifique au sein d’une structure s’est vu attribuer une valeur. Cet article explorera une solution à ce problème.

Dans Go, les structures sont des types valeur, ce qui signifie que l'attribution d'une nouvelle valeur à une propriété de structure crée une nouvelle copie de la structure. Ce comportement peut compliquer la vérification si une propriété a été définie.

Comme suggéré par dyoo dans la réponse fournie, une approche consiste à utiliser des valeurs nulles. Si la propriété est un pointeur, vous pouvez vérifier si elle est nulle pour déterminer si la propriété a été définie. Cependant, cette approche n'est pas applicable si la propriété n'est pas un pointeur.

Vous pouvez également comparer la valeur de la propriété à une valeur par défaut, telle qu'une chaîne vide. L'exemple suivant illustre cette approche :

package main

import "fmt"

type MyStruct struct {
    Property string
}

func main() {
    s1 := MyStruct{
        Property: "hey",
    }

    s2 := MyStruct{}

    if s1.Property != "" {
        fmt.Println("s1.Property has been set")
    }

    if s2.Property == "" {
        fmt.Println("s2.Property has not been set")
    }
}
Copier après la connexion

Dans cet exemple, si le champ Propriété de s1 n'est pas vide, le code indique qu'il a été défini. À l'inverse, si le champ Propriété de s2 est vide, le code indique qu'il n'a pas été défini.

Cette approche vous permet de déterminer si une propriété struct s'est vu attribuer une valeur, que la propriété soit ou non une propriété. pointeur ou pas. En comparant la valeur de la propriété à une valeur par défaut, vous pouvez vérifier efficacement l'affectation.

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