Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»


// int типіндегі аластамаларын өңдеу



Pdf көрінісі
бет335/642
Дата30.03.2022
өлшемі3,66 Mb.
#29231
түріПрограмма
1   ...   331   332   333   334   335   336   337   338   ...   642
Байланысты:
pavlovskaia-jogargy-dengeili

   ... // int типіндегі аластамаларын өңдеу  

}

catch(const char *){

   ... // const char* типіндегі аластамаларын өңдеу 



catch(Overfl ow){

   ... // Overfl ow класы аластамаларын өңдеу



catch(j){

   ...   // барлық қарастырылмаған аластамаларды өңдеу

}

Аластаманы өңдеуден кейін басқару бірден тікелей аластаманы өңдеуіштен 

соң орналасқан алғашқы операторға беріледі. Егер аластама 



try

-блокта гене-

рацияланбаса, онда басқару барлық өңдеуіштердің кодын орындамай, бірден 

осы аталған операторға беріледі. 




243

Аластамаларды айқындап атқару

throw

 түйінді сөзінің көмегімен аластама генерацияланған кезде, C++ 

атқарушы кітапханасының функциялары келесідей əрекеттерді орындайды:

1)  статикалық объект түрдегі 



throw

 параметрінің көшірмесін жасайды, 

ол аластама өңделіп болғанша жойылмайды;

2)  сəйкес келетін өңдеуішті табу мақсатында əрекет ету аймағынан тыс 

орналасқан жергілікті объектілердің деструкторларын шақыру арқылы стекті 

тарқату ісі атқарылады;

3)  обект жəне əрекеттерді басқару осы объектімен үйлесімді типтегі 

параметрі бар өңдеуішке беріледі.

Стекті тарқату кезінде барлық өңдеуіштер өздеріне сəйкес келетіні 

табылғанша ішкі блоктан сыртқысына қарай əрбір деңгейде тізбектеле 

қарастырылады. 

Егер 


throw

 түйінді сөзінен кейін көрсетілген объектінің типі 

төмендегілердің біріне сəйкес келсе:



Достарыңызбен бөлісу:
1   ...   331   332   333   334   335   336   337   338   ...   642




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет