Sobes.tech
Junior — Middle

Que signifie la propriété capacity d'une tranche en Go, si elle n'est pas spécifiée explicitement lors de sa création?

sobes.tech IA

Réponse de l'IA

Dans Go, un slice est une structure qui contient un pointeur vers un tableau, une longueur (len) et une capacité (capacité).

Si lors de la création d'un slice, la capacité n'est pas explicitement indiquée, elle est définie égale à la longueur du slice. La capacité indique combien d'éléments le slice peut contenir sans allocation de mémoire supplémentaire.

Par exemple :

s := make([]int, 3) // len=3, cap=3

Ici, la capacité est de 3, car elle n'a pas été spécifiée séparément.

Si la capacité est supérieure à la longueur, le slice peut être étendu jusqu'à la capacité sans allouer un nouveau tableau.