Junior — Middle
Proqramlaşdırmada statik dəyişən və adi dəyişən arasında nə fərq var?
sobes.tech Süni İntellekt
AI-dan cavab
Statik dəyişən, funksiyanın çağırışları arasında və ya proqramın bütün işləmə müddətində dəyərini saxladığı üçün adi dəyişəndən fərqlənir, halbuki adi dəyişən hər çağırışda yenidən yaradılır və çıxış etdikdə məhv olur.
Məsələn, Swift-də, sinif və ya struktur daxilində statik dəyişən öz növünə aiddir, nümunəyə yox, və tək bir nümunədə mövcuddur:
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 adi nümunə dəyişənidir, və totalCount bütün nümunələr üçün ümumi olan statik dəyişəndir.