Sobes.tech
Junior — Middle

Wat is het verschil tussen een statische variabele en een gewone variabele in programmeren?

sobes.tech AI

Antwoord van AI

Een statische variabele verschilt van een gewone variabele doordat deze zijn waarde behoudt tussen functieaanroepen of gedurende de hele uitvoering van het programma, terwijl een gewone variabele bij elke aanroep opnieuw wordt gemaakt en na het verlaten van het bereik wordt vernietigd.

Bijvoorbeeld, in Swift, behoort een statische variabele binnen een klasse of structuur tot het type zelf, niet tot een instantie, en bestaat in een enkele instantie:

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

Hier is count een normale instantievariabele, en totalCount is een statische variabele, gedeeld door alle instanties van de klasse.