Junior
Değer türleri nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Swift'teki değer tipleri, atama veya fonksiyona geçirme sırasında kopyalanan tiplerdir. Her bağımsız kopyanın kendi depolama alanı vardır.
Örnekler:
- 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 // Değerin kopyası
p2.x = 10 // Kopyayı değiştiriyoruz, p1 değişmiyor
print(p1.x) // Çıktı: 1
print(p2.x) // Çıktı: 10
Avantajlar:
- Tahmin edilebilir davranış, kodun bir bölümündeki değişiklikler diğer kopyaları etkilemez.
- Yerel değerlerle çalışırken varsayılan olarak güvenli akış.
Dezavantajlar:
- Büyük yapılar için kopyalama maliyetli olabilir.
Referans tipleriyle karşılaştırma:
| Özellik | Değer tipi | Referans tipi |
|---|---|---|
| Atama | Değerin kopyalanması | Bağlantının kopyalanması |
| Değişiklik | Kopyayı değiştirir | Orijinal nesneyi değiştirir |
| Örnek | struct, enum, tuple, temel tipler | class, closure |