файлында)
numeric_limits
класының шаблоны
анықталған, мұнда мəліметтер типінің жүзеге асырылуға тəуелді қасиеттері: ди-
апазоны, дəлдігі, таңбасының болуы, т.с.с. анықталады. Мəліметтердің негізгі
типтерінің əрқайсысы үшін
numeric_limits
шаблонының специализациясы
анықталған. Дəл осы сипаттамалар С кітапханасынан мұраланған
жəне
тақырыптақ файлдарында сипатталған тұрақтыларда да
анықталады, мысалы:
□
FLT_DIG
–
fl oat
типті шамалардағы дұрыс мағыналы цифрлар саны;
□
FLT_MIN
–
fl oat
типімен бейнелеуге болатын ең кіші нормаланған
жылжымалы нүктелі сан;
□
UINT_MAX
–
unsigned int
типті шама қабылдай алатын ең үлкен мəн
(65 535 шамасынан кем болмауы тиіс).
Бұл тұрақтылар толығынан 5қосымшада сипатталған.
Жадыны бөлу кезіндегі қателерді өңдеу үшін кітапханада
bad_alloc
кла-
сы,
new_handler
қателерді өңдеушіфункциялар типі жəне
set_new_handler
жаңа өңдеушіні тағайындау функциясы сипатталған.
Жадыны бөлу қателіктерін өңдеудің механизмі келесідей: егер
new
опе-
рациясы динамикалық жадының қажетті көлемін бөле алмайтын болса, ол
new_handler
типті өңдеуші функцияны шақырады, бұл функция жадыны
босатуға тырысуы тиіс немесе
bad_alloc
класының немесе одан туынды
кластың объектісі түрінде аластаманы тудыруы керек, не болмаса программаны
аяқтау үшін
abort
немесе
exit
функциясын шақыруы тиіс.
set_new_handler
функциясы стандартты өңдеушінің орнына өзіндік өңдеушіні орнату үшін
қолданылады. Көбінесе ол
new
жəне
delete
операцияларын қайта жүктеу
кезінде қолданылады.
|