Maison > développement back-end > Golang > Comment puis-je implémenter efficacement les valeurs des paramètres par défaut dans les méthodes Go ?

Comment puis-je implémenter efficacement les valeurs des paramètres par défaut dans les méthodes Go ?

Susan Sarandon
Libérer: 2024-12-12 11:01:11
original
211 Les gens l'ont consulté

How Can I Effectively Implement Default Parameter Values in Go Methods?

Spécification des valeurs par défaut dans les méthodes Go

Dans Go, les méthodes ne permettent pas de fournir directement des valeurs par défaut pour les paramètres. Cependant, il existe plusieurs solutions de contournement pour obtenir un effet similaire :

Option 1 : initialisation explicite

Si l'appelant ne fournit pas de valeur pour un paramètre facultatif, il peut être explicitement initialisé à une valeur par défaut dans la méthode :

func SaySomething(i string) string {
    if i == "" {
        i = "Hello"
    }
    return i
}
Copier après la connexion

Option 2 : Paramètres facultatifs au niveau Fin

Une autre approche consiste à déclarer des paramètres facultatifs à la fin de la liste de paramètres, ce qui permet à l'appelant de fournir des valeurs de manière sélective :

func SaySomething(i string, optionalValue bool) string {
    if optionalValue {
        i += " with some option"
    }
    return i
}
Copier après la connexion

Option 3 : Pointeurs aux valeurs par défaut

Passer des pointeurs vers des variables contenant les valeurs par défaut, permettant à la méthode de les modifier si nécessaire :

func SaySomething(i *string) string {
    if *i == "" {
        *i = "Hello"
    }
    return *i
}
Copier après la connexion

Option 4 : Config Struct

Créez une structure de configuration qui mappe les noms de paramètres aux valeurs par défaut et transmettez-la comme argument de méthode :

type Config struct {
    Message string
}

func SaySomething(config *Config) string {
    if config.Message == "" {
        config.Message = "Hello"
    }
    return config.Message
}
Copier après la connexion

Option 5 : Variadique Arguments

Utilisez des arguments variadiques pour transmettre un nombre arbitraire de valeurs, en spécifiant des valeurs par défaut pour des arguments spécifiques :

func SaySomething(args ...string) string {
    i := "Hello"
    if len(args) > 0 {
        i = args[0]
    }
    return i
}
Copier après la connexion

Bien que Go ne prenne pas en charge la spécification de valeurs par défaut directement dans les paramètres de méthode, ces solutions de contournement offrent des options flexibles pour implémenter le comportement par défaut.

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