Junior — Middle
Veri və referans tiplərini necə ayırd etmək və proqramlaşdırmada onların fərqləri nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Dəyər və referans tipləri, proqramda necə saxlanılır və ötürülürlərində fərqlənir.
- Dəyər tipləri (value types) təyin etmə və ya ötürmə zamanı kopyalanır. Hər dəyişən öz müstəqil nüsxəsini saxlayır.
- Referans tipləri (reference types) təyin etmə və ya ötürmə zamanı eyni obyektə referans nüsxəsi kopyalanır. Bir referans vasitəsilə edilən dəyişikliklər digər vasitəsilə görünür.
Məsələn, Swift-də:
var a = 5
var b = a // 5 dəyəri kopyalanır
b = 10
print(a) // 5, çünki a və b müstəqildir
class Person {
var name: String
init(name: String) { self.name = name }
}
var p1 = Person(name: "Иван")
var p2 = p1 // referans kopyalanır
p2.name = "Пётр"
print(p1.name) // "Пётр", çünki p1 və p2 eyni obyektə istinad edir
Bu fərqi anlamaq yaddaş idarəetməsi və proqramın davranışının əvvəlcədən bilinə bilməsi üçün vacibdir.