Sobes.tech
Junior — Middle

Mi a célja a 'mutating' kulcsszónak a Swift programozás kontextusában?

sobes.tech MI

Válasz az MI-től

Swiftben a mutating kulcsszó struktúrák és enumerációk metódusaiban használatos, hogy jelezze, hogy az adott metódus módosítja (mutálja) az példány tulajdonságait.

Alapértelmezés szerint a struktúrák és enumerációk metódusai nem módosíthatják a tulajdonságaikat, mivel értéktípusok és érték szerint kerülnek átadásra. A tulajdonságok módosításának engedélyezéséhez a metódusban, meg kell jelölni mutating-ként.

Példa:

struct Counter {
    var count = 0
    mutating func increment() {
        count += 1
    }
}

var counter = Counter()
counter.increment()  // most a count 1

mutating nélkül a fordító hibaüzenetet ad, ha a metódus megpróbálja módosítani a struktúra vagy enumeráció tulajdonságait.