Maison  >  Article  >  développement back-end  >  Les paramètres variables Golang seront-ils introduits dans les futures versions ?

Les paramètres variables Golang seront-ils introduits dans les futures versions ?

王林
王林original
2024-04-30 14:09:02393parcourir

Le langage Go n'a pas de paramètres variables, qui peuvent être simulés via slice : utilisez une fonction pour recevoir slice comme paramètre de longueur variable, comme func sum(nums...int) Slice peut contenir n'importe quel nombre d'éléments pour implémenter le. fonction de paramètres de longueur variable, et peut également être utilisé comme valeur de retour. Il n'y a actuellement aucun plan ferme pour un support variadique dans les versions futures, mais des propositions et des discussions existent.

Les paramètres variables Golang seront-ils introduits dans les futures versions ?

Arguments variadiques en Go : Comprendre les mécanismes actuels et les perspectives d'avenir

Que sont les arguments variadiques ?

Les paramètres variables permettent aux fonctions d'accepter un nombre variable de paramètres. Dans d'autres langages, cela se fait généralement en utilisant la syntaxe "varargs" ou "...".

Les arguments variadiques n'existent pas dans Go

Cependant, les arguments variadiques ne sont actuellement pas pris en charge dans Go. Dans les cas où un nombre variable d'arguments est requis, vous pouvez utiliser des tranches ou émuler un comportement variadique.

Simulez le comportement des arguments variadiques

Utilisez slice :

func sum(nums ...int) int {
   total := 0
   for _, num := range nums {
       total += num
   }
   return total
}

Une tranche peut contenir n'importe quel nombre d'éléments, ce qui en fait à la fois un argument de longueur variable et une valeur de retour.

Cas pratique :

Supposons que nous ayons une fonction qui doit calculer la somme d'un ensemble de nombres. Simulation d'arguments variadiques à l'aide de tranches :

package main

import "fmt"

func main() {
    nums := []int{1, 2, 3, 4, 5}
    result := sum(nums...)
    fmt.Println(result) // 输出:15
}

Arguments variadiques dans les versions futures

Il n'y a actuellement aucun calendrier ni plan clair pour l'introduction future des arguments variadiques dans Go. Cependant, certaines propositions et discussions explorent la possibilité de l'ajouter au langage.

Si vous devez utiliser des paramètres variadiques, vous pouvez simuler ce comportement en utilisant la méthode ci-dessus. Veuillez garder un œil sur les futures mises à jour de la version Go au cas où le support variadique officiel serait introduit.

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!

Déclaration:
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