Junior — Middle
Jakie unikalne cechy mają slices w języku Go?
sobes.tech AI
Odpowiedź od AI
Slicery w Go to dynamiczne, modyfikowalne widoki sekwencji elementów tablicy. Unikalne cechy sliców:
- Dynamczny rozmiar: w przeciwieństwie do tablic, slice mogą zmieniać długość podczas działania programu.
- Odwołanie do tablicy: slice zawiera wskaźnik na bazową tablicę, długość i pojemność.
- Pojemność i długość: długość to liczba elementów w slicie, pojemność to maksymalna liczba elementów, które slice może pomieścić bez alokacji nowej pamięci.
- Kopiowanie slice'ów: kopiowanie slice'a kopiuje strukturę, ale nie dane, czyli oba slice'y odwołują się do tego samego array'a.
Przykład tworzenia slice'a:
arr := [5]int{1, 2, 3, 4, 5}
slice := arr[1:4] // slice z elementami 2,3,4