Junior
Jak jsou parametry předávány funkci v Go: odkazem nebo hodnotou?
sobes.tech AI
Odpověď od AI
Podle hodnoty. To znamená, že při volání funkce je vytvořena kopie hodnoty předaného argumentu.
Výjimky jsou:
- Řez (slices)
- Mapy (maps)
- Kanály (channels)
- Ukazatele
V těchto případech je předána kopie hlavičky (header) datové struktury (slices, maps, kanály) nebo samotný ukazatel (pro ukazatele). Změny dat přes tuto hlavičku nebo ukazatel uvnitř funkce budou viditelné zvenčí.