Sobes.tech
Junior

Comment les paramètres sont-ils passés à une fonction en Go : par pointeur ou par valeur?

sobes.tech IA

Réponse de l'IA

Par valeur. Cela signifie qu'une copie de la valeur de l'argument passé est créée lors de l'appel de la fonction.

Les exceptions sont :

  • Tranches (slices)
  • Cartes (maps)
  • Canaux (channels)
  • Pointeurs

Dans ces cas, une copie de l'en-tête (header) de la structure de données (slices, maps, channels) ou le pointeur lui-même (pour les pointeurs) est transmise. Toute modification des données via cet en-tête ou pointeur à l'intérieur de la fonction sera visible de l'extérieur.