Sobes.tech
Junior

Jak przekazywane są parametry do funkcji w Go: przez wskaźnik czy przez wartość?

sobes.tech AI

Odpowiedź od AI

Według wartości. Oznacza to, że podczas wywoływania funkcji tworzona jest kopia wartości przekazanego argumentu.

Wyjątki to:

  • Slicing (slices)
  • Mapy (maps)
  • Kanały (channels)
  • Wskaźniki

W tych przypadkach przekazywana jest kopia nagłówka (header) struktury danych (slices, maps, kanały) lub sam wskaźnik (dla wskaźników). Zmiany danych za pomocą tego nagłówka lub wskaźnika wewnątrz funkcji będą widoczne na zewnątrz.