Junior — Middle
Lehet-e új értékeket hozzáadni egy meglévő felsoroláshoz, amelyet opcionális típus alapjaként használnak?
sobes.tech MI
Válasz az MI-től
Swiftben az enumerációk (enum) olyan típusok, amelyeknek fix értékkészlete van. Az enum definiálása után nem lehet új eseteket (értékeket) hozzáadni a meglévő enumhoz.
Ha a funkcionalitást szeretné bővíteni vagy új értékeket hozzáadni, akkor módosítania kell az enum forráskódját vagy létre kell hoznia egy újat.
Ez azért van, mert Swiftben az enum szigorú típus, és az értékkészlete fordítási időben ismert.
Példa:
enum Direction {
case north
case south
case east
case west
}
// Nem lehet az enum definícióján kívül hozzáadni a northeast esetet
Ha bővíthetőségre van szükség, más megközelítéseket lehet alkalmazni, például struktúrákat állandó értékekkel vagy protokollokat.