1 – dars. C++ Dasturlash tilining kelib chiqishi xaqida ma’lumot


G’ayri oddiy holatni qayta ishlovchini ta'riflash



Download 0,66 Mb.
bet118/121
Sana29.12.2021
Hajmi0,66 Mb.
#83735
1   ...   113   114   115   116   117   118   119   120   121
Bog'liq
1 – dars. C Dasturlash tilining kelib chiqishi xaqida ma’lumot

G’ayri oddiy holatni qayta ishlovchini ta'riflash
Dastur g’ayri oddiy holatni generatsiya qilganda kompilyator g’ayri oddiy holatni qayta ishlovchi funktsiyani chaqiradi. Misol uchun qo’yidagi nuke_meltdown gayri oddiy hodisa sinfi bu holatni qayta ishlovchi nuke_meltdown funktsiyasini anilqaydi:

class nuke_meltdown

{

public:


nuke_meltdown(void){ cerr << "\a\a\aRabotayu! Rabotayu! Rabotayu!" << endl; }

};

Bu misoldjva dasturda nuke_meltdown g’ayri oddiy hodisasi generatsiya bo’lganda, C++ nuke_meltdown funktsiyasi operatorlarini ishga tushiradi, shundan so’ng g’ayri oddiy holatni aniqlashgga ruhsat beruvchi try operatoridan so’ng kelgan operatorga boshqarishni uzatadi. Qo’yidagi MELTDOWN.CPP dasturi nuke_meltdown funktsiyasini bajarilishini ko’rsatadi. Bu dasturda try operatoridan g’ayri oddiy holatni aniqlashda ruhsat berish uchun foydalaniladi. Shundan so’ng dastur add_u232 funktsiyani amount parametri bilan chaqiradi. Agar bu parametr qiymati 255 dan kam bo’lsa, funktsiya muvaffaqiyatli bajarilmoqda. Agar parametr qiymati 255 dan oshiq bo’lsa funktsiya nuke_meltdown g’ayri oddiy holatini generatsiya qiladi:



#include

class nuke_meltdown

{

public:


nuke_meltdown(void){ cerr << "\a\a\aRabotayu! Rabotayu! Rabotayu!" << endl; }

};

void add_u232(int amount)



{

if (amount < 255) cout << "Parametr add_u232 v poryadke" << endl;

else throw nuke_meltdown();

}

void main(void)



{

try


{

add_u232(255);

}

catch (nuke_meltdown)



{

cerr << "Programma ustoychiva" << endl;

}

}

Bu dastur bajarilganda qo’yidagi ma'lumot ekranga chiqariladi:



S:\> MELTDOWN

Rabotayu! Rabotayu! Rabotayu!

Programma ustoychiva


Download 0,66 Mb.

Do'stlaringiz bilan baham:
1   ...   113   114   115   116   117   118   119   120   121




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