Sobes.tech
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čí.