Sobes.tech
Junior — Middle

Qual é a finalidade da palavra-chave 'mutating' no contexto da programação em Swift?

sobes.tech IA

Resposta da IA

Em Swift, a palavra-chave mutating é usada em métodos de estruturas e enumerações para indicar que esse método altera (muta) as propriedades da instância.

Por padrão, os métodos em estruturas e enumerações não podem alterar suas propriedades, pois são tipos de valor e são passados por valor. Para permitir a alteração de propriedades dentro do método, é necessário marcá-lo como mutating.

Exemplo:

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

var counter = Counter()
counter.increment()  // count agora é 1

Sem mutating, o compilador gerará um erro se o método tentar modificar as propriedades da estrutura ou enumeração.