Sobes.tech
Junior

O que são tipos de valores?

sobes.tech IA

Resposta da IA

Os tipos de valor em Swift são tipos cujas instâncias são copiadas ao serem atribuídas ou passadas para uma função. Cada cópia independente possui seu próprio armazenamento.

Exemplos:

  • Structs
  • Enums
  • Tuples
  • Integer, Float, Double, Bool, String, Array, Dictionary, Set
struct Point {
    var x: Int
    var y: Int
}

var p1 = Point(x: 1, y: 2)
var p2 = p1 // Cópia do valor
p2.x = 10 // Alteramos a cópia, p1 não muda

print(p1.x) // Saída: 1
print(p2.x) // Saída: 10

Vantagens:

  • Comportamento previsível, pois alterações numa parte do código não afetam outras cópias.
  • Segurança de fluxo por padrão ao trabalhar com valores locais.

Desvantagens:

  • A cópia pode ser custosa para estruturas grandes.

Comparação com tipos de referência:

Característica Tipo de valor Tipo de referência
Atribuição Cópia do valor Cópia do link
Alteração Modifica a cópia Modifica o objeto original
Exemplo struct, enum, tuple, tipos básicos class, closure