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.