O. X. Azamatov


 Istisno xolatlar va sinflar


Download 1.82 Mb.
Pdf ko'rish
bet92/119
Sana09.01.2022
Hajmi1.82 Mb.
#256439
1   ...   88   89   90   91   92   93   94   95   ...   119
Bog'liq
3072-Текст статьи-7829-1-10-20200908

12.6. Istisno xolatlar va sinflar 
Sinf  yaratishda  shu  sinfga  tegishli  istisno  xolatlarni  aniqlash  mumkin.  Aniq 
sinfga  tegishli  istisno  xolatni  yaratish  uchun  ushbu  istisno  xolatni  sinfning  umumiy 
(public) elementlari sifatida kiritish zarur.  
Masalan diapazon chegarasidan chiquvchi indeks qiymatini bilish zarur bo‘lsin: 
class Vector { 
   // ... 
public: 
   class Range { 
   public: 
     int index
     Range(int i) : index(i) { } 
  }; 
  // ... 
  int& operator[](int i) 
  // ... 
           }; 
          int Vector::operator[](int i) 
           { 
 if (o<=i && i  throw Range(i); 
           } 
     Mumkin bo‘lmagan indeks qiymatini bilish uchun istisno xolatni tasvirlovchi 
obyektga nom berish kerak: 
void  f(Vector& v) 


103 
 

     // ... 
   try { 
     do_something(v); 
       } 
      catch (Vector::Range r ) { 
      cerr << "mumkin bo‘lmagan indeks" << r.index << '\n'; 
      // ... 
   } 
   // ... 
 } 
   Qavsdagi konstruksiya tavsif bo‘lib funksiya formal parametriga mosdir. Unda 
parametr tipi va yuzag kelgn istisno nomi berilishi mumkin. 

Download 1.82 Mb.

Do'stlaringiz bilan baham:
1   ...   88   89   90   91   92   93   94   95   ...   119




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