Sobes.tech
Junior

Кайсылар шилтемелүү маалыматтар?

sobes.tech AI

AIден жооп

Маалыматтын шилтемелүү түрлөрү өзүнүн маанисин сактабайт, тескерисинче, сакталган жердин (эстутум дареги) шилтемесин сактайт. Мындай маалыматтарды белгилөө же өткөрүп берүү учурунда, тек гана шилтеменин көчүрмөсү жасалат, бүт объект эмес. Бир шилтемеден жасалган өзгөртүүлөр, башка шилтемелер аркылуу ошол эле объектке көрсөтүп турганда көрүнөт.

Тилдерде шилтемелүү түрлөрүнүн мисалдары:

  • Java: Класстар (String, Object, колдонуучу класстар), интерфейстер, массивдер.
  • C#: Класстар (string, object, колдонуучу класстар), интерфейстер, делегаттар, массивдер.
  • Python: Бардык маалымат түрлөрү (тизмелер, сөздүктөр, кортеждер, топтомдор, класстар, функциялар).
# Python мисалы
list1 = [1, 2, 3]
list2 = list1  # list2, list1 менен бирдей тизмеге шилтеме кылат

list2.append(4)

print(list1)  # Чыгуу: [1, 2, 3, 4]
print(list2)  # Чыгуу: [1, 2, 3, 4]

Маанилүү түрлөрдөн айырмасы, маанилүү түрлөр маанини өзү сактайт, жана белгилөө/өткөрүү учурунда бүт мааниге көчүрмө жасалат.

Салыштыруу мисалы:

Өзгөчөлүк Маанилүү түрлөр Шилтемелүү түрлөрү
сактоо Өзүнүн мааниси Мааниге шилтеме
Белгилөө/өткөрүү Маанинин көчүрмөсү Шилтеменин көчүрмөсү
Өзгөртүү Оргиналдуулукка таасир этпейт Оргиналдуулук өзгөртүлөт
Мисал (C#) int, struct, enum class, interface, array