Maison > développement back-end > Golang > Go Slices : `var` ou `make` – Quelle déclaration est la meilleure ?

Go Slices : `var` ou `make` – Quelle déclaration est la meilleure ?

Mary-Kate Olsen
Libérer: 2025-01-03 20:19:39
original
286 Les gens l'ont consulté

Go Slices: `var` or `make` – Which Declaration is Best?

Déclarer une portion : var ou make ?

Dans Go, les portions sont une structure de données essentielle. Il existe cependant deux manières différentes de déclarer une portion :

var s []int

Cette déclaration crée une portion sans valeur, c'est-à-dire une portion qui ne vaut pas stocke n’importe quel élément. La valeur de référence de s est nulle.

s := make([]int, 0)

Cette instruction crée une tranche vide, c'est-à-dire une tranche avec zéro élément mais avec de la mémoire allouée. La valeur de référence de s n'est pas nulle.

Quelle est la différence ?

La principale différence entre ces deux déclarations est que var déclare une partie sans valeur while qui make alloue de la mémoire pour un morceau vide. L’utilisation de var crée un morceau auquel aucun espace de stockage n’est initialement alloué. Aucun élément ne peut être stocké dans la tranche tant que de la mémoire ne lui est pas allouée.

D'un autre côté, make alloue de la mémoire pour une tranche vide, ce qui signifie que les éléments peuvent y être stockés immédiatement. Cependant, la taille initiale de la portion est nulle, il est donc important d'augmenter la taille de la portion si plus d'articles doivent être stockés.

Quelle est la meilleure option ?

Il est généralement recommandé d'utiliser var pour déclarer une portion si vous ne connaissez pas la taille exacte de la portion à utiliser. Cela permet à la tranche de s'agrandir et de se redimensionner dynamiquement selon les besoins.

Si la taille exacte de la tranche est connue, l'utilisation de make peut être plus efficace, car elle alloue de la mémoire immédiatement et évite de surcharger la tranche en créant une tranche sans valeur. portion.

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