Sobes.tech
Junior

Cum sunt transmise parametrii într-o funcție în Go: prin pointer sau prin valoare?

sobes.tech AI

Răspuns de la AI

După valoare. Aceasta înseamnă că, la apelarea funcției, se creează o copie a valorii argumentului transmis.

Excepțiile sunt:

  • Slices
  • Hărți (maps)
  • Canale
  • Poinți

În aceste cazuri, se transmite o copie a antetului (header) structurii de date (slices, hărți, canale) sau pointerul însuși (pentru pointers). Modificările datelor prin acest antet sau pointer în interiorul funcției vor fi vizibile din exterior.