Junior — Middle
Kāda ir atšķirība starp statisko mainīgo un parasto mainīgo programmēšanā?
sobes.tech AI
Atbilde no AI
Statiskā mainīgā atšķiras no parastās ar to, ka tā saglabā savu vērtību starp funkcijas izsaukumiem vai visu programmas darbības laiku, kamēr parastā mainīgā tiek izveidota no jauna katru reizi un pēc darbības beigu izzūd.
Piemēram, Swift, statiska mainīgā klasē vai struktūrā pieder pašam tipam, nevis instancē, un pastāv vienā instancē:
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
Šeit, count ir parasta instanču mainīgā, bet totalCount ir statiska mainīgā, kas ir kopīga visām klases instancēm.