19830

Специфікація функцій, що обробляють виключення

Доклад

Информатика, кибернетика и программирование

Специфікація функцій що обробляють виключення Повернення функцією коду помилки є самим звичайним і широко застосовуваним методом. Однак цей метод має істотні недоліки. Поперше потрібно пам'ятати чисельні значення кодів помилок. Цю проблему можна обійти використовую...

Украинкский

2013-07-17

24.5 KB

0 чел.

Специфікація функцій, що обробляють виключення

Повернення функцією коду помилки є самим звичайним і широко застосовуваним методом. Однак цей метод має істотні недоліки. По-перше, потрібно пам'ятати чисельні значення кодів помилок. Цю проблему можна обійти, використовуючи перераховуються типи. Але в деяких випадках функція може повертати широкий діапазон допустимих (неошібочних) значень, і тоді складно знайти діапазон для повертаються кодів помилки. Це і є другим недоліком. І, по-третє, при використанні такого механізму сигналізації про помилки вся відповідальність за їх обробці лягає на програміста і можуть виникнути ситуації, коли серйозні помилки будуть залишені без уваги.
Повернення коду помилки через аргумент функції або використання глобальної змінної помилки знімають, насамперед, другу проблему, проте як і раніше залишаються перша і третя. Крім того, використання глобальних змінних не є особливо позитивним фактором.
Використання оператора безумовного переходу в будь-яких ситуаціях є небажаним, крім того, оператор goto діє тільки в межах функції. Пара функцій setjmp / longjmp є досить потужним засобом, однак і цей метод має серйозний недолік: він не забезпечує виклик деструкторів локальних об'єктів при виході з області видимості, що, природно, тягне за собою витоку пам'яті.

І, нарешті, макрос assert є скоріше засобом налагодження, ніж засобом обробки нештатних подій, що виникають в процесі використання програми.


 

А также другие работы, которые могут Вас заинтересовать

25691. Устойчивость работы электропривода 281 KB
  Устойчивое, неустойчивое и безразличное состояния электродвигателей. Статическая устойчивость электропривода Совмещенные механические характеристики электродвигателя и механизмов. Влияние эксплуатационных характеристик электродвигателяышечные клетки. Клетки узла проводящей системы. Формирование импульса происходит в синусном узле центральную часть которого занимают клетки первого типа водители ритма или пейсмекерные клетки Рклетки способные к самопроизвольным сокращениям.
25692. Прямая кишка 31 KB
  В тазовой части прямой кишки ее слизистая оболочка имеет три поперечные складки. В анальной части кишки различают три зоны: столбчатую промежуточную и кожную. Слизистая оболочка прямой кишки состоит из эпителия собственной и мышечной пластинок.
25693. Сердце 42.5 KB
  Стенка сердца состоит из трех оболочек: внутренней эндокарда средней миокарда и наружной эпикарда. Первая закладка сердца появляется в начале 3й недели развития у эмбриона длиной 15 мм в виде парного скопления мезенхимных клеток которые расположены в задней части головного отдела зародышевого щитка по сторонам от средней линии под висцеральным листком мезодермы. К 4му месяцу заканчивается образование всех отделов проводящей системы сердца. Клапаны сердца: предсердножелудочковые и желудочковососудистые развиваются в основном...
25694. Развитие нервной ткани 35.5 KB
  Часть клеток нервной пластинки не входит в состав нервной трубки и эпидермальной эктодермы и образует скопления по бокам от нервной трубки которые сливаются в рыхлый тяж располагающийся между нервной трубкой и эпидермальной эктодермой нервный гребень ганглиозная пластинка. Нервная трубка на ранних стадиях эмбриогенеза представляет собой многорядный нейроэпителий состоящий из вентрикулярных или нейроэпителиальных клеток. Вентрикулярная эпендимная зона состоит из делящихся клеток цилиндрической формы. Клетки делятся и после деления...
25695. НЕРВНАЯ СИСТЕМА. Развитие. Нервы. Узлы. Оболочки 34 KB
  Оболочки. Клетки этой оболочки отличаются овальной формой ядер. На поперечном срезе нерва видны сечения осевых цилиндров нервных волокон и одевающие их глиальные оболочки. Соединительнотканные оболочки нерва содержат кровеносные и лимфатические сосуды и нервные окончания.
25696. Взаимодействия клеток в иммунном ответе 53.5 KB
  Узнавание рецептором Тхклетки комплекса АГ молекула МНС II класса на поверхности Влимфоцита приводит к секреции Тхклеткой интерлейкинов ИЛ2 ИЛ4 ИЛ5 ИЛ6 гаммаИФН гаммаинтерферона под действием которых Вклетка размножается и дифференцируется с образованием плазматических клеток и Вклеток памяти. Так ИЛ4 инициирует активацию Вклетки ИЛ5 стимулирует пролиферацию активированных Вклеток ИЛ6 вызывает созревание активированных Вклеток и превращение их в плазматические клетки секретирующие антитела. Они регулируют...
25698. Селезенка 49 KB
  На 12й неделе развития селезенки впервые появляются Влимфоциты с иммуноглобулиновыми рецепторами. Толщина капсулы неодинакова в различных участках селезенки. Наиболее толстая капсула в воротах селезенки через которые проходят кровеносные и лимфатические сосуды. Внутрь от капсулы отходят перекладины трабекулы селезенки которые в глубоких частях органа анастомозируют между собой.
25699. Семявыносящие пути 43 KB
  Этот проток многократно извиваясь формирует тело придатка и в нижней хвостовой части его переходит в прямой семявыносящий проток поднимающийся к выходу из мошонки а затем достигающий предстательной железы где впадает в мочеиспускательный канал. Добавочные железы мужской половой системы: семенные пузырьки предстательная железа бульбоуретральные железы. В первой половине пренатального эмбриогенеза человека из разрастающихся эпителиальных тяжей развиваются преимущественно альвеолярнотрубчатые простатические железы а со второй половины...