Junior — Middle
რა მონაცემები ინახება სლაის სტრუქტურის შიგნით პინტერში?
sobes.tech AI
პასუხი AI-სგან
Go dilisində dilim (slice) quruluşunda üç əsas sahə saxlanılır:
-
İşarəçi (pointer) — dilimin istinad etdiyi massivdəki ilk elementin ünvanı. Bu, bütün massivlərin başlanğıcı olmaq məcburiyyətində deyil, yalnız dilimin massiv daxilində başlanğıcıdır.
-
Uzunluq (length) — dilim vasitəsilə əlçatan olan elementlərin sayı.
-
Həcmi (capacity) — işarəçidən başlayaraq, yeni yaddaş ayırmadan yerləşdirilə biləcək maksimum element sayı.
Sadəlaşdırılmış dilim strukturu nümunəsi:
type SliceHeader struct {
Data uintptr // ilk elementə işarəçi
Len int // dilimin uzunluğu
Cap int // dilimin həcmi
}
Şu şəkildə, dilim daxilindəki işarəçi, əsas massivdəki dilimin ilk elementinə işarə edir və bu, məlumatların kopyalanmaması ilə alt massivlərlə səmərəli işləməyə imkan verir.