Sobes.tech
Junior — Middle

Sabit değerli enumlar ile referanslar veya dolaylı değerler kullanan enumlar arasındaki fark nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

iOS'ta, enum'lar (numaralar) iki ana türe ayrılabilir:

  1. Sabit Değerli Enumlar (Raw Value Enums) — her öğeye belirli bir sabit değer atanır (örneğin, Int, String). Bu değerler derleme zamanında bilinir ve veri saklama ve iletme işlemlerinde kullanılır.

Örnek:

enum Direction: Int {
    case north = 1
    case south = 2
    case east = 3
    case west = 4
}
  1. İlişkili Değerli Enumlar (Associated Values) — her durum, oluşturulurken farklı türlerde ek veriler saklayabilir. Bu, daha karmaşık ve çeşitli verilerin saklanmasına olanak tanır.

Örnek:

enum Barcode {
    case upc(Int, Int, Int, Int)
    case qrCode(String)
}

Farklar:

  • Sabit değerler — basit, statik, tanımlama için kullanılır.
  • İlişkili değerler — dinamik, durum içinde ek veri saklamaya olanak tanır.

Bu şekilde, sabit değerli enumlar basit sabitler kümesi için uygundur, ilişkili değerli enumlar ise daha karmaşık veri yapıları için idealdir.