Junior — Middle
Aké obmedzenia existujú pre surové hodnoty (raw value) v konkrétnych typoch alebo jazykových konštrukciách?
sobes.tech AI
Odpoveď od AI
V Swift-e sa neupravenými hodnotami (raw values) sa napríklad používajú v výčtoch (enum) s rawValue. Hlavné obmedzenia pre rawValue:
- Raw hodnota musí byť rovnakého typu pre všetky prípady enum.
- Typ rawValue musí byť literál (napríklad String, Int, Character alebo iný typ podporujúci literály).
- Nie je možné používať zložité typy alebo štruktúry ako rawValue.
- Všetky rawValues musia byť v rámci enum jedinečné.
Príklad enum s rawValue:
enum Direction: String {
case north = "N"
case south = "S"
case east = "E"
case west = "W"
}
Tu je rawValue reťazec a všetky hodnoty sú jedinečné. Ak rawValue nie je explicitne uvedený, pre Int budú automaticky číslované od 0.