Dasturlash II 7-hafta mavzu: shablonlar, vektorlar va steklar


delete[] elements; // 45-qator delete



Download 397,29 Kb.
bet2/6
Sana26.02.2022
Hajmi397,29 Kb.
#471490
1   2   3   4   5   6
Bog'liq
D2 maruza-7

delete[] elements; // 45-qator
delete[] old; // 79-qator
Agar buni xato qilib, quyidagicha yozsak nima yuz beradi?
delete elements; // 45-qator
delete old; // 79-qator
Oddiy turdagi qiymatlar steki uchun dastur kompilyatsiya qilinadi va juda yaxshi bajariladi, lekin, ob’yektlar steki uchun bu jumlalar noto`g`ri. delete[] elements ko`rsatmasi dastlab, elementlar massividagi har bie ob’yekt uchun destruktor ni chaqiradi va keyin massivni o`chiradi, delete elements esa, massivning faqatgina birinchi elementi uchun destruktor chaqiradi.


7.2. C++ ning vector sinfi
Key Point. C++ ob’yektlar ro`yxatini yozish uchun, tarkibida umumiy vector sinfini saqlaydi.
C++da satrlar va int qiymatlar kabi ma’lumotlar jamlanmasini yozish uchun massivdan foydalanishimiz mumkin. Bu yerda jiddiy cheklash mavjud: Massiv yaratilganda, uning hajmi o`zgarmas holga o`tadi. C++ massivlarga nisbatan ko`proq qayishqoq (egiluvchan) bo`lgan, vector sinfini taqdim etadi. Vector sinfidan xuddi massiv singari foydalanishimiz mumkin, lekin vektor hajmi, agar zarur bo`lsa, avtomatik tarzda oshadi.
Vektorni quyidagicha sintaksis asosida hosil qilish mumkin:
vector vektorNomi;
Masalan,
vector <int> intVector;
int qiymatlarni yozish uchun vektor hosil qilishga mo`ljallangan.
vector <string> stringVector;
esa, satrli ob’yektlarni yozuvchi vektorni hosil qiladi.
7.1-rasm sinfning UML diagrammasi orqali, vector sinfida tez-tez qo`llanilib turuvchi funksiyalar ro`yxatini taqdim etadi.

7.1-rasm. vector sinfi o`zgaruvchan massiv vazifasini o`taydi.
Shuningdek biz, jimlik qoidasi bo`yicha berilgan qiymatlar bilan to`ldirilgan hajmdagi vektorni ham hosil qilishimiz mumkin. Masalan, quyidagi kod, jimlik qoidasiga ko`ra ­­0 qiymati bilan, yuklanuvchi o`lchami 10 ga teng bo`lgan vektorni hosil qiladi:
vector <int> intVector(10);
Vektorga massivni ifodalovchi [] operatori bilan murojaa tqilish mumkin. Masalan,
cout << intVector[0];
vektorning birinchi elementirni konsolga chiqaradi.

Download 397,29 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish