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


Типтерді динамикалық түрде идентификациялауды қолдау үшін  кітапханада  type_info



Pdf көрінісі
бет387/465
Дата23.05.2022
өлшемі3.66 Mb.
#458577
түріПрограмма
1   ...   383   384   385   386   387   388   389   390   ...   465
pavlovskaia-jogargy-dengeili

412
Типтерді динамикалық түрде идентификациялауды қолдау үшін 
кітапханада 
type_info
класы («Типтерді түрлендіру» бөлімінде, 249 б. 
қарастырылған), сондайақ 
bad_cast
жəне 
bad_typeid
ерекше жағдайлар 
кластары анықталған.
Барлық 
стандартты ерекше жағдайлар 

тақырыптық фай-
лында сипатталған 
exception
класының ұрпақтары болып табылады. 
Диагностика құралдарының қатарына программаның жұмысы барысын-
да туындайтын қателердің диагностикасын жүргізу үшін қолданылатын стан-
дартты кластар мен функциялар жатады. Барлық қателер программаны іске 
қосудан бұрын табуға болатын 
логикалық (
logic_error
) қателер мен орын-
далу уақытының қателері (
runtime_error
) болып бөлінеді. Кітапханада 
ерекше жағдайлар кластарының қарапайым иерархиясы анықталған, ол про-
граммалаушы құратын ерекше жағдайларға негіз болуы тиіс.
16.1-сурет. 
Стандартты ерекше жағдайлар кластарының иерархиясы
Төменде осы кластар қысқаша сипатталған:
bad_alloc
– 
new
көмегімен жадыны динамикалыық бөлу кезінде 
шығатын қателік;
bad_cast
– 
dynamic_cast
операторын дұрыс қолданбау («Типтерді 
түрлендіру» бөлімін, 249 б. қараңыз);
bad_typeid
– 
typeid
операциясы операнд типін анықтай алмайды 
(257 б.);


413
bad_exception
– ерекше жағдайларының спецификациясында осы 
класс көрсетілген функцияны шақыру кезінде күтпеген аластама орын-
далса, осы аластама туындайды;
length_error
– 
size_t
типінің ең үлкен өлшемінен артық болатын 
объектіні құруға талпыныс кезінде шығады;
domain_error
– əрекетті орындау алдында ішкі шарттардың бұзылуы;
out_of_range
– функцияны оның параметрі қабылдай алмайтын 
мəндері арқылы шақыруға талпыныс;
invalid_argument
– функцияны дұрыс берілмеген параметрлер 
арқылы шақыруға талпыныс;
range_error
– орындалу нəтижесінің дұрыс болмауы;
overfl ow_error
– арифметикалық түрде толып кету (берілген 
мəліметтер типі үшін нəтиженің тым үлкен болатын жағдайы);
underfl ow_error
– дəреженің жоғалуы (берілген мəліметтер типі үшін 
нəтиженің тым кіші болуы).
Осы кластарды қолддану үшін 

тақырыптық файлын іске 
қосу қажет.
Оқшаулау құралдарының қатарына əртүрлі мемлекеттер үшін ерекшеле-
нетін категориялар бойынша реттелген ақпараттар кіреді, мысалы, оларға күн-
ай мерзімі мен уақыттың бейнеленуі, ұлттық ақша бірлігінің форматы, сандар 
мен символдардың бейнеленуі жатады. Категориялар кластар арқылы берілген. 
Программалаушы оларды программаның əртүрлі мемлекеттердегі жұмыс 
істеуі кезінде əмбебап болуын қамтамасыз ету үшін қолдана алады. Оқшаулау 
құралдарының сипаттамалары 


Достарыңызбен бөлісу:
1   ...   383   384   385   386   387   388   389   390   ...   465




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

    Басты бет