O‘zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent axborot texnologiyalari universiteti urganch filali dasturlash 1 fanidan Mustaqil ish Gurux: 972-21


Download 45.18 Kb.
bet2/2
Sana22.11.2023
Hajmi45.18 Kb.
#1793748
1   2
Bog'liq
6-mustaqil ish

Biz qamrab olamiz :
std::vector

  • C++ da nima bor ?

  • C++ vektor funktsiyalari

  • C++ vektorini qanday ishga tushirish kerak

  • Keyinchalik nimani o'rganish kerak

C++ da nima bor ?
C++ vektorlari (shuningdek, std::vectorhajmi o'zgarishi mumkin bo'lgan massivlarni ifodalovchi ketma-ketlik konteynerlaridir . Ular dinamik ma'lumotlar bilan ishlashga odatlangan va ular o'z elementlari uchun qo'shni saqlash joylaridan foydalanadilar . Oddiy ko'rsatkichlardagi ofsetlardan foydalanib, elementlarga samarali kirishingiz mumkin. Ichki C++ vektorlari o'z elementlarini saqlash uchun dinamik ravishda ajratilgan massivlardan foydalanadi. Massiv qayta taqsimlashni talab qilishi mumkin, shuning uchun yangi elementlar kiritilganda uning hajmi kattalashishi mumkin.
Vektor konteynerlari potentsial o'sish uchun qo'shimcha saqlash joyini ajratishi mumkin, shuning uchun konteyner aslida uning ichida saqlanganidan kattaroq hajmga ega bo'lishi mumkin. Qayta taqsimlash va xotiradan foydalanish o'rtasidagi muvozanatni saqlash uchun turli xil o'sish strategiyalarini qo'llash uchun kutubxonalardan foydalanishingiz mumkin, ammo qayta taqsimlashlar faqat o'lchamning logarifmik ravishda o'sib borayotgan oraliqlarida amalga oshirilishi kerak. Bu vektorning oxiriga alohida elementlarni kiritishda amortizatsiyalangan doimiy vaqt murakkabligidan foydalanishga imkon beradi .
C++ vektorlari avtomatik qayta taqsimlashni amalga oshirganligi sababli, ular saqlashni boshqarish va samarali tarzda dinamik o'sish imkoniyatiga ega . Ular massivlardan ko'ra ko'proq xotirani iste'mol qilsalar ham, ularning samaradorligi va moslashuvchanligi vektorlardan foydalanishga arziydi.
Keling, C++ vektorining yana bir qancha afzalliklarini muhokama qilaylik:

  • Maksimal o'lcham yo'q, agar ma'lumotlaringiz qanchalik katta bo'lishini oldindan bilmasangiz foydali bo'ladi

  • Ularning o'lchamini o'zgartirish imkoniyatlari dinamik elementlar bilan ishlashni osonlashtiradi

  • C++ vektori shablon sinfi boʻlgani uchun turli maʼlumotlarni qayta ishlash uchun bir xil kodni kiritish shart emas

  • Xotiraning umumiy hajmi ishlatilganda, avtomatik qayta taqsimlash sodir bo'ladi

  • Siz boshqa vektorlarni osongina nusxalashingiz va belgilashingiz mumkin

Misol:
#include


#include
int main()
{
// Create a vector containing integers
std::vector v = {7, 5, 16, 8};
// Add two more integers to vector
v.push_back(25);
v.push_back(13);
// Print out the vector
std::cout << "v = { ";
for (int n : v)
std::cout << n << ", ";
std::cout << "}; \n";
}





Download 45.18 Kb.

Do'stlaringiz bilan baham:
1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling