Sobes.tech
Junior

Bağlantıların yığında saklandığı ne anlama gelir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Yerel değer değişkenleri (tipler Int, Bool, Double, String, Struct, Enum), bir fonksiyon içinde oluşturulduğunda, yığında saklanır. Yığın, yerel değişkenler, fonksiyon parametreleri ve dönüş adresleri için kullanılan bir bellek alanıdır. LIFO (Last In, First Out) prensibiyle çalışır.

Çalışma prensibi:

  1. Yerleştirme: Bir fonksiyon çağrıldığında, bir yığın çerçevesi oluşturulur. Bu fonksiyonun yerel değer değişkenleri bu çerçevede saklanır.
  2. Erişim: Yığında değişkenlere erişim çok hızlıdır, çünkü adresleri yığın göstergesinden göreceli olarak belirlenir.
  3. Serbest bırakma: Fonksiyon tamamlandığında, yığın çerçevesi (ve içindeki tüm değişkenler) basitçe yığının en üstünden kaldırılır.

Örnek:

func processNumbers() {
    var number1: Int = 10 // number1 yığında saklanır
    let number2: Double = 20.5 // number2 yığında saklanır
    
    // ... number1 ve number2 kullanımı
} // processNumbers fonksiyonundan çıkarken, number1 ve number2 yığından kaldırılır

Referans tipleri (Class, Actor) ile karşılaştırıldığında, örnekleri yığında değil, heap'te saklanır ve yığında bu örneğe referans tutulur.