Junior
Wat zijn de types waarden?
sobes.tech AI
Antwoord van AI
De types in Swift die op waarde gebaseerd zijn, zijn typen waarvan de exemplaren worden gekopieerd bij toewijzing of doorgeven aan een functie. Elke onafhankelijke kopie heeft zijn eigen opslag.
Voorbeelden:
- 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 // Kopie van de waarde
p2.x = 10 // We wijzigen de kopie, p1 verandert niet
print(p1.x) // Output: 1
print(p2.x) // Output: 10
Voordelen:
- Voorspelbaar gedrag, omdat wijzigingen in één deel van de code andere kopieën niet beïnvloeden.
- Standaard veilige werking bij werken met lokale waarden.
Nadelen:
- Kopiëren kan kostbaar zijn voor grote structuren.
Vergelijking met referentietypen:
| Kenmerk | Waarde type | Referentie type |
|---|---|---|
| Toewijzing | Kopie van de waarde | Kopie van de referentie |
| Wijziging | Wijzigt de kopie | Wijzigt het originele object |
| Voorbeeld | struct, enum, tuple, basistypen | class, closure |