Software Development

Golang Slices

Written by Burak Yılmaz

Slice lar; ayni tip ogeleri iceren , uzunluk siniri olmayan dizileri temsil ederler. []T seklinde tanimlanir. Bir slice; pointer, uzunluk ve kapasite bilesenlerinden olusur.

Pointer(ptr) : Slice’in ilk ogesinin bellekteki adresini tutar.
Length(len) : Slice’in uzunlugunu tutar.
Capacity(cap) : Slice’in kapasitesini tutar.

Yeni bir slice tanimlaninca bellekte bir yer ayrilir ve icerisinde ptr, len, cap bilgileri tutulur. Slice icerisindeki bir elemana erismek istenildiginde bu bilgiler yeterli olacaktir.

Slice’in 1. elemanina erismek istenildiginde, Golang once slice icerisindeki pointer bilgisi ile 0. elemana ulasir. Ardindan bellekte bulunan siradaki elemani isteyerek 1. elemana ulasir. Slice’in verileri bellekte stack’de sirali bir sekilde tutulur.

About the author

Burak Yılmaz