Maison >développement back-end >Golang >Comment puis-je allouer des tableaux de taille variable dans Go ?
Allocation de tableaux avec une taille variable dans Go
Contrairement aux tableaux de taille constante déclarés à l'aide de const, Go ne permet pas l'allocation directe de tableaux avec tailles déterminées par l'exécution. Cela est évident dans le code illégal suivant :
n := 1 var a [n]int
Cependant, il existe une solution : utilisez des tranches au lieu de tableaux. Les tranches sont des références aux tableaux sous-jacents et offrent des capacités de redimensionnement dynamique. La fonction intégrée make() est utilisée pour créer des tranches et leurs tableaux sous-jacents. Il prend trois arguments :
En créant une tranche à l'aide de make(), on alloue indirectement un tableau avec un taille d'exécution :
n := 12 s := make([]int, n, 2*n)
Dans ce cas, un tableau de taille 2*n est alloué, et s fait référence à une tranche contenant les n premiers éléments du tableau.
Cela reste flou pourquoi Go ne permet pas l'allocation directe de tableaux de taille variable, mais la solution consistant à utiliser des tranches offre une alternative flexible et efficace. Par conséquent, il est recommandé d'utiliser des tranches dans la plupart des scénarios lorsque vous travaillez avec des structures de données dynamiques dans Go.
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!