Junior — Middle
Programlamada statik bir değişken ile normal bir değişken arasında ne fark vardır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Statik bir değişken, fonksiyon çağrıları arasında veya programın çalışma süresi boyunca değerini koruduğu için normal bir değişkenden ayrılır, oysa normal bir değişken her çağrıda yeniden oluşturulur ve kapsam dışına çıkıldığında yok edilir.
Örneğin, Swift'te, bir sınıf veya yapının içinde statik bir değişken, örneğe değil, tipe aittir ve tek bir örnekte bulunur:
class Counter {
static var totalCount = 0
var count = 0
func increment() {
count += 1
Counter.totalCount += 1
}
}
let a = Counter()
a.increment()
print(a.count) // 1
print(Counter.totalCount) // 1
let b = Counter()
b.increment()
print(b.count) // 1
print(Counter.totalCount) // 2
Burada, count normal bir örnek değişkenidir, totalCount ise tüm sınıf örnekleriyle paylaşılan statik bir değişkendir.