Sobes.tech
Junior — Middle

Poderia explicar o conceito de Inout e como ele é usado na programação?

sobes.tech IA

Resposta da IA

Em Swift, inout é uma palavra-chave que permite a uma função modificar diretamente o valor de uma variável passada, em vez de trabalhar apenas com a sua cópia. Normalmente, os parâmetros de uma função são passados por valor, ou seja, a função recebe uma cópia, e as alterações dentro da função não afetam o original. Com inout, a função recebe uma referência à variável, e as alterações dentro da função permanecem após a sua execução.

Exemplo de uso:

func increment(value: inout Int) {
    value += 1
}

var number = 5
increment(value: &number) // Passa-se usando &
print(number) // Vai mostrar 6

Aqui, number é alterado dentro da função increment graças ao inout. Isto é útil quando se precisa alterar vários valores numa função sem retornar novos valores.