Sobes.tech
Junior — Middle

Əgər başlanğıcda initialized edilməyibsə, bir element əlavə etdikdən sonra slice neçə element və hansı tutuma malik olacaq?

sobes.tech Süni İntellekt

AI-dan cavab

Go'da başlanğıcda inisializə olunmamış (yəni, nil-ə bərabər) olan dilimə append funksiyası ilə bir element əlavə etdikdə:

  • Əlavə etdikdən sonra elementlərin sayı (len) 1 olacaq.
  • Həcmi (cap) tətbiqə bağlıdır, amma adətən kiçik bir həcm ilə başlayır, məsələn 1 və ya 2.

Nümunə:

var s []int // nil-dilim
s = append(s, 10)
fmt.Println(len(s)) // 1
fmt.Println(cap(s)) // adətən >= 1

Beləliklə, nil dilimə ilk element əlavə etdikdə, Go avtomatik olaraq bu elementi saxlamaq üçün kifayət qədər yaddaş ayırır.