Dans Go, il n'est pas possible de spécifier des paramètres nommés lors de l'appel d'une fonction. Au lieu de cela, les arguments doivent être répertoriés dans l’ordre attendu. Cependant, il existe deux approches pour réaliser l'initialisation à l'aide de noms de champs :
La méthode la plus directe consiste à définir une structure qui englobe les paramètres de la fonction et à transmettre une instance de la structure à la fonction :
type Params struct { Name string Address string Nick string Age int Value int } func MyFunction(p Params) { // Operations using p.Name, p.Address, etc. } func main() { MyFunction(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
Si la modification de la fonction d'origine n'est pas faisable, une fonction d'assistance peut être créée qui accepte une structure et transmet les valeurs de champ appropriées à la fonction d'origine :
func MyFunction(name, address, nick string, age, value int) { // Operations using name, address, etc. } func MyFunction2(p Params) { MyFunction(p.Name, p.Address, p.Nick, p.Age, p.Value) } func main() { MyFunction2(Params{ Name: "Bob", Address: "New York", Nick: "Builder", Age: 30, Value: 1000, }) }
Les deux méthodes vous permettent d'initialiser les paramètres de fonction à l'aide de noms de champs, offrant une flexibilité et une meilleure lisibilité du code. .
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!