генерациялауы мүмкін. Бос тізім функция аластамаларды тудырмайтынын
246
void f() throw (){
// аластамаларды тудырмайтын функцияның тұлғасы
}
Аластамалар функцияның прототипіне енгізілмейді. Туынды класта вир-
туалды функцияны қайта анықтау кезінде базалық кластың соған сəйкес
функциясындағы сияқты немесе оған қарағанда шектелген аластамалар тізімін
беруге болады.
Аластамалар тізімін көрсетудің ешбір салдары жоқ – функция қолданбауға
уəде берген аластаманы тікелей немесе жанамалы түрде туындатуы мүмкін.
Мұндай жағдай программаны орындау кезінде көрінеді де,
unexpected
стандартты функциясының шақырылуына əкеліп соғады, ол, өз кезегінде,
келісім бойынша
terminate
функциясын шақырады.
set_unexpected
функциясының көмегімен
terminate
функцияның орнына шақырылатын
жəне көзделмеген аластама туындаған кездегі программаның əрекетін
анықтайтын өзіндік функцияны тағайындауға болады.
7.1-сурет.
Аластаманы өңдеу алгоритмі
247
terminate
функциясы келісім бойынша программаның орындалуын
аяқтайтын
Достарыңызбен бөлісу: