Kompozit turlari Kompozit tiplar bir nechta ibtidoiy turlardan olingan. Buni bir necha usul bilan amalga oshirish mumkin. Ularni birlashtirish usullari ma'lumotlar tuzilmalari deb ataladi. Ibtidoiy turni qo‘shma turga sozlash, odatda, yangi turga olib keladi, masalan. array-of-integer butun sondan boshqa turdagi.
Massiv (vektor, roʻyxat yoki ketma-ketlik deb ham ataladi) bir qancha elementlarni saqlaydi va alohida elementlarga tasodifiy kirishni taʼminlaydi. Massivning elementlari odatda bir xil turdagi bo'lishi kerak (lekin barcha kontekstlarda emas). Massivlar o'zgarmas uzunlikdagi yoki kengaytiriladigan bo'lishi mumkin. Massivdagi indekslar odatda ma'lum bir diapazondan (agar bu diapazondagi barcha indekslar elementlarga to'g'ri kelmasa, u siyrak massiv bo'lishi mumkin) butun son bo'lishi talab qilinadi (agar bo'lmasa, assotsiativ massiv haqida gapirish orqali bu yengillikni ta'kidlash mumkin).Yozuv (shuningdek, kortej yoki struktura deb ataladi) Yozuvlar eng oddiylari qatoriga kiradi ma'lumotlar tuzilmalari. Yozuv odatda belgilangan raqam va ketma-ketlikda va odatda nomlar bo'yicha indekslangan boshqa qiymatlarni o'z ichiga olgan qiymatdir. Yozuvlar elementlari odatda maydonlar yoki a'zolar deb ataladi.Ittifoq. Birlashma turi ta'rifi ruxsat etilgan ibtidoiy turlarning qaysi biri o'z misollarida saqlanishi mumkinligini aniqlaydi, masalan. "suzuvchi yoki uzun butun son". Float va butun sonni o'z ichiga olishi mumkin bo'lgan yozuvdan farqli o'laroq; holbuki, ittifoqda bir vaqtning o'zida faqat bitta turga ruxsat beriladi. Belgilangan birlashma (shuningdek, variant, variant yozuvi, diskriminatsiyalangan birlashma yoki ajratilgan birlashma deb ataladi) kengaytirilgan turdagi xavfsizlik uchun joriy turini ko'rsatadigan qo'shimcha maydonni o'z ichiga oladi. To‘plam mavhum ma’lumotlar strukturasi bo‘lib, u ma’lum qiymatlarni hech qanday maxsus tartibsiz va takroriy qiymatlarsiz saqlashi mumkin. Qiymatlarning o'zi to'plamlardan olinmaydi, aksincha, mantiqiy "in" yoki "in emas" olish uchun a'zolik qiymatini sinab ko'radi. Ob'ekt yozuv kabi bir qancha ma'lumotlar maydonlarini, shuningdek, usullar deb ataladigan ularga kirish yoki o'zgartirish uchun bir qator pastki dasturlarni o'z ichiga oladi. String va matn turlari. Satrlar - bu so'zlarni yoki oddiy matnni saqlash uchun ishlatiladigan belgilar ketma-ketligi, ko'pincha formatlangan matnni ifodalovchi matn belgilash tillari. Belgilar ba'zi alifboning harfi, raqam, bo'sh joy, tinish belgisi va boshqalar bo'lishi mumkin. Belgilar ASCII kabi belgilar to'plamidan chiziladi. Belgilar va satr turlari belgilar kodlashiga ko'ra turli xil kichik tiplarga ega bo'lishi mumkin. Asl 7-bitli keng ASCII cheklanganligi aniqlandi va uning oʻrnini 8, 16 va 32-bitli toʻplamlar egalladi, ular turli xil lotin boʻlmagan alifbolarni (masalan, ibroniy va xitoy tillari kabi) va boshqa belgilarni kodlashi mumkin. Satrlar o'zgaruvchan uzunlikdagi yoki qat'iy uzunlikda bo'lishi mumkin va ba'zi dasturlash tillarida ikkala tur ham mavjud. Ular, shuningdek, maksimal o'lchamlari bo'yicha subtipatsiyalanishi mumkin.Ko'pgina belgilar to'plami raqamlarni o'z ichiga olganligi sababli, "1234" kabi raqamli qatorga ega bo'lish mumkin. Ushbu raqamli satrlar odatda 1234 kabi raqamli qiymatlardan farq qiladi, garchi ba'zi tillar ular o'rtasida avtomatik ravishda aylanadi.Boshqa ko'plab turlar mumkin, ammo ular yuqoridagilarning boshqa o'zgarishlari va birikmalari bo'lishga moyil. Xususan, agar yozuvning maydoni boshqa yozuvga ko'rsatgich bo'lishi mumkin bo'lsa, unda juda murakkab turlarni qurish mumkin. Ma'lumotlar strukturasida ko'rsatgichlardan o'zboshimchalik bilan foydalanish dastur kodidagi o'zboshimchalik bilan sakrashlar kabi chalkashliklarga olib kelishi mumkin.Misol uchun, bog'langan ro'yxat bir xil ma'lumotlarni massiv bilan saqlashi mumkin, lekin tasodifiy emas, balki ketma-ket kirishni ta'minlaydi va dinamik xotiradagi yozuvlardan iborat. Bunday bog'langan ro'yxat navbatni ko'rsatish uchun ishlatilishi mumkin. Yana bir tez-tez ishlatiladigan tur - bu ikkilik daraxt bo'lib, u juda tez qidirish imkonini beradi. Stack ro'yxat yoki massiv yordamida amalga oshirilishi mumkin va oxirgi marta birinchi bo'lib chiqish holatlarini hal qilishda ishlatilishi mumkin.