Junior
Типҳои арзишҳо чистанд?
sobes.tech AI
Ҷавоб аз AI
Типҳои арзиш дар Swift — инҳо намудҳое мебошанд, ки намунаҳои онҳо дар вақти таъин ё гузаронидан ба функсия нусхабардорӣ мешаванд. Ҳар нусхаи мустақил хранилоти худро дорад.
Масалан:
- 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 // Нусхаи арзиш
p2.x = 10 // Мо нусхаро тағйир медиҳем, p1 тағйир намеёбад
print(p1.x) // Натиҷа: 1
print(p2.x) // Натиҷа: 10
Фоидаҳо:
- Ҳаводории пешгӯишаванда, зеро тағйирот дар як қисми коди дигар нусхаҳоро таъсир намерасонад.
- Бехатарии стандартӣ дар кор бо арзишҳои маҳаллӣ.
Норасоиҳо:
- Нусхабардорӣ метавонад барои структураҳои калон гарон бошад.
Мувофиқ бо намудҳои истинод:
| Хусусият | Намуди арзиш | Намуди истинод |
|---|---|---|
| Таъин кардан | Нусхабардории арзиш | Нусхабардории пайванд |
| Тағйирот | Тағйир додани нусха | Тағйир додани объект оригиналӣ |
| Мисол | struct, enum, tuple, намудҳои асосӣ | class, closure |