Студопедия — R.15.4 Обработка особой ситуации
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

R.15.4 Обработка особой ситуации






Обработчик типа T, const T, T& или const& сопоставим свыражением-запуска, имеющим операнд типа E, если: [1] T и E являются одним типом; [2] T является доступным ($$R.4.6) базовым классом E в точке запуска; [3] T является типом указателя, а E является таким типом указателя, который можно в точке запуска преобразовать в T с помощью стандартных преобразований указателя ($$R.4.6). Рассмотрим пример: class Matherr { /*... */ virtual vf(); }; class Overflow: public Matherr { /*... */ }; class Underflow: public Matherr { /*... */ }; class Zerodivide: public Matherr { /*... */ }; void f() { try { g(); } catch (Overflow oo) { //... } catch (Matherr mm) { //... } } Здесь обработчик Overflow будет перехватывать ситуации типаOverflow, а обработчик Matherr будет перехватывать ситуации типаMatherr и всех типов, являющихся общими производными от Matherr,включая Underflow и Zerodivide. Обработчики в проверяемом-блоке подбираются для данной особойситуации в порядке их описания. Считается ошибкой, если обработчикдля базового класса помещен перед обработчиком для производного класса,поскольку при таком расположении управление никогда не попадетк обработчику для производного класса. Эллипсис... в описании-особой-ситуации действует так же как, ив описании параметров функции, он сопоставим с любой особойситуацией. Если задан эллипсис, то использующий его обработчикдолжен идти последним в проверяемом-блоке. Если в проверяемом-блоке не произошло сопоставления ни с однимиз обработчиков, поиск соответствующего обработчика продолжаетсяв динамически объемлющем проверяемом-блоке. Если во всей программене произошло сопоставления ни с одним обработчиком, вызываетсяфункция terminate() ($$R.15.7). Особая ситуация считается обработанной после входа в телообработчика. В этот момент завершится "раскручивание стека".







Дата добавления: 2015-09-04; просмотров: 320. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Тема 5. Анализ количественного и качественного состава персонала Персонал является одним из важнейших факторов в организации. Его состояние и эффективное использование прямо влияет на конечные результаты хозяйственной деятельности организации.

Билет №7 (1 вопрос) Язык как средство общения и форма существования национальной культуры. Русский литературный язык как нормированная и обработанная форма общенародного языка Важнейшая функция языка - коммуникативная функция, т.е. функция общения Язык представлен в двух своих разновидностях...

Патристика и схоластика как этап в средневековой философии Основной задачей теологии является толкование Священного писания, доказательство существования Бога и формулировка догматов Церкви...

ПРОФЕССИОНАЛЬНОЕ САМОВОСПИТАНИЕ И САМООБРАЗОВАНИЕ ПЕДАГОГА Воспитывать сегодня подрастающее поколение на со­временном уровне требований общества нельзя без по­стоянного обновления и обогащения своего профессио­нального педагогического потенциала...

Эффективность управления. Общие понятия о сущности и критериях эффективности. Эффективность управления – это экономическая категория, отражающая вклад управленческой деятельности в конечный результат работы организации...

Мотивационная сфера личности, ее структура. Потребности и мотивы. Потребности и мотивы, их роль в организации деятельности...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия