Sobes.tech
Junior

İstinad növü məlumatları nədir?

sobes.tech Süni İntellekt

AI-dan cavab

İstinad növü məlumatları öz dəyərini deyil, onun saxlandığı yerə (bellek ünvanına) istinad edir. Belə məlumatların təyin olunması və ya ötürülməsi zamanı yalnız istinad kopyalanır, bütün obyekt deyil. Bir istinad vasitəsilə edilən dəyişikliklər, digər istinadlar vasitəsilə həmin obyektə işarə etdikdə görünəcək.

Fərqli dillərdə istinad növü məlumat nümunələri:

  • Java: Siniflər (String, Object, xüsusi siniflər), interfeyslər, massivlər.
  • C#: Siniflər (string, object, xüsusi siniflər), interfeyslər, delegatlar, massivlər.
  • Python: Bütün məlumat tipləri (siyahılar, lüğətlər, tuple-lər, dəstlər, siniflər, funksiyalar).
# Python-da nümunə
list1 = [1, 2, 3]
list2 = list1  # list2, eyni siyahıya istinad edir

list2.append(4)

print(list1)  # Çıxış: [1, 2, 3, 4]
print(list2)  # Çıxış: [1, 2, 3, 4]

Qiymət tipləri ilə fərqi odur ki, qiymət tipləri öz dəyərini saxlayır və təyin olunması və ya ötürülməsi zamanı bütün dəyər kopyalanır.

Müqayisə nümunəsi:

Xüsusiyyət Qiymət tipləri İstinad tipləri
Saxlama Öz dəyəri Dəyərə istinad
Təyin və ötürmə Dəyərin kopyası İstinadın kopyası
Dəyişiklik Orijinalı təsir etmir Orijinalı dəyişir
Nümunə (C#) int, struct, enum class, interface, array