Junior
¿Qué son los tipos de valores?
sobes.tech AI
Respuesta de la IA
Los tipos de valores en Swift son tipos cuyos ejemplares se copian al asignarlos o pasarlos a una función. Cada copia independiente tiene su propio almacenamiento.
Ejemplos:
- 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 // Copia del valor
p2.x = 10 // Modificamos la copia, p1 no cambia
print(p1.x) // Salida: 1
print(p2.x) // Salida: 10
Ventajas:
- Comportamiento predecible, ya que los cambios en una parte del código no afectan a otras copias.
- Seguridad en el flujo por defecto al trabajar con valores locales.
Desventajas:
- La copia puede ser costosa para estructuras grandes.
Comparación con tipos de referencia:
| Característica | Tipo de valor | Tipo de referencia |
|---|---|---|
| Asignación | Copia del valor | Copia del enlace |
| Cambio | Modifica la copia | Modifica el objeto original |
| Ejemplo | struct, enum, tuple, tipos básicos | class, closure |