O. X. Azamatov


 Istisnolarni generatsiya qilish



Yüklə 1,82 Mb.
Pdf görüntüsü
səhifə89/119
tarix31.12.2021
ölçüsü1,82 Mb.
#49500
1   ...   85   86   87   88   89   90   91   92   ...   119
3072-Текст статьи-7829-1-10-20200908

 
12.3. Istisnolarni generatsiya qilish 
C++  o‘zi  istisno  xolatlarni  yuzaga  keltirmaydi.  Ularni  C++  ning  throw  
operatoridan foydalangan  dasturlar yuzaga keltiradi. Istisno yuzaga kelganda, throw 
operatoridagi    nom  berish  ifodasi  muvaqqat  obyektni  nomlaydi 
(initsiallashtiradi),  Bunda  muvaqqat  obyektning  turi  ifoda  argumenti  (dalili)  ning 
turiga  mos  keladi.  Ushbu  obyektning  boshqa  nusxlari,  masalan,  istisno  obyektidan 
nusxa ko‘chirish konstruktori yordamida generatsiya qilinishi mumkin. 
Masalan  fayl  ochilishida  dastur    xato    kelib  chiqish  shartlarini  tekshirish  va 
throw file_open_error() istisno xolatni  yuzaga keltirish mumkin. 
Istisno  xolatdan  foydalanishda  dastur  xatoni  kelib  chiqish  shartlarini  tekshiradi 
va zarur bo‘lsa throw operatordan foydalangan xolda istisno xolatni yuzaga keltiradi. 
C++  throw  operatorni  uchratsa,  u  istisno  xolatga  tegishli  ishlov  beruvchini  
aktivizatsiya  etadi  (operatorlari  istisno  xolat  sinfida  aniqlangan  funksiya.  Istisno 
xolatga  ishlov  beruvchi  funksiya  bajarilgandan  so‘ng  C++  boshqarishni  try 
operatordan  keyin  turgan  birinchi  operatorga  qaytaradi.  try  operator  esa  istisno 
xolatni  aniqlashini  xal  etuvchi    operator.  Keyin  esa  catch  operatordan  foydalanib 
dastur kanday istisno xolat ro‘y berganini aniqlaydi va tegishli xolda javob beradi.  
 


101 
 

Yüklə 1,82 Mb.

Dostları ilə paylaş:
1   ...   85   86   87   88   89   90   91   92   ...   119




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin