68962

Обробка похідних виняткових ситуацій

Лекция

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

Якщо виняткові ситуації описуються за допомогою базового і похідних класів, при роботі з операторами catch слідує проявлять максимальну обережність, оскільки оператор catch, відповідний базовому класу, одночасно відповідає всім похідним класам.

Украинкский

2014-09-28

23 KB

0 чел.

Лекція № 24

Тема: Обробка похідних виняткових ситуацій

Якщо виняткові ситуації описуються за допомогою базового і похідних класів, при роботі з операторами catch слідує проявлять максимальну обережність, оскільки оператор catch, відповідний базовому класу, одночасно відповідає всім похідним класам. Таким чином, якщо необхідно перехопити виняткові ситуації базового і похідних класів, в послідовності операторів catch похідний клас слід обробляти першим. Якщо цього не зробити, оператор catch, відповідний базовому класу виняткової ситуації, також перехоплюватиме виняткові ситуації всіх похідних класів. Розглянемо наступну програму.

// Перехоплення похідних класів.

#include <iostream>

using namespace std;

class В

{

};

class D: public В

{

};

int main()

{

D derived;

try {

 throw derived;

} catch(B b) {

cout « "Перехоплення базового класу.\ п";

} catch(D d) {

cout « "Цей оператор не виконується.\ п";

}

return 0;

}

Оскільки об'єкт derived є екземпляром похідного класу він буде перехоплений першим оператором catch, а другий оператор catch ніколи виконуватися не буде. Деякі компілятори в таких випадках видають попередження. Інші компілятори взагалі вважають це помилкою. Так або інакше, щоб виправити цю ситуацію, слід поміняти порядок проходження операторів catch.


 

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

11449. Определение универсальной газовой постоянной 137.5 KB
  Лабораторная работа №16 Определение универсальной газовой постоянной Цель работы: изучение свойств идеального и реального газа экспериментальное определение универсальной газовой постоянной. Приборы и принадлежности: баллон откачивающий насос манометр для изм...
11450. ВИВЧЕННЯ БУДОВИ, ПРИНЦИПУ ДІЇ ТА ВИКОРИСТАННЯ ЛАЗЕРІВ 226.5 KB
  Лабораторна робота №4 ВИВЧЕННЯ БУДОВИ ПРИНЦИПУ ДІЇТА ВИКОРИСТАННЯ ЛАЗЕРІВ Мета роботи: вивчення принципу роботи і визначення довжини хвилі випромінювання газового лазера. Прилади та обладнання: лазер ЛГ209 дифракційна решітка лінійка міліметровий папір. Тео
11451. КВАНТОВА ФІЗИКА 194.5 KB
  КВАНТОВА ФІЗИКА 1. ВСТУП Закони квантової фізики квантової механіки складають фундамент вивчення будови речовини. Вони дозволили зясувати будову атомів встановити природу хімічного звязку властивості напівпровідників та ін. Квантова фізика наука про будов
11452. Исследование скважин методом последовательной смены установившихся притоков 750 KB
  ЛАБОРАТОРНАЯ РАБОТА №1 Исследование скважин методом последовательной смены установившихся притоков. Целью данного исследования скважин является определение коэффициента продуктивности скважин гидропроводности и проницаемости призабойной части пласта. В з
11453. ИНФОРМАТИКА В 6 КЛАССЕ. ВСЕ КОНСПЕКТЫ УРОКОВ 2.74 MB
  Учебное методическое пособие для учителя предполагает наличие в школьном кабинете информатики IBM-совместимых компьютеров, организованных в локальную сеть, а также программного обеспечения: операционной системы Windows 2000 (Windows NT, XP и т.д.), графического редактора Paint, текстового редактора Microsoft Word (или WordPad), системы программирования Pascal ABC с исполнителем Чертежник. Допустимое время работы школьников за компьютером – 20 минут.
11454. УЧАСТИЕ АФК В ОТКРЫТИИ СЛЕДОВ КРОВИ НА СТОМАТОЛОГИЧЕСКОМ ИНСТРУМЕНТАРИИ В РЕАКЦИИ С АЗОПИРАМОМ 32 KB
  Участие АФК в Открытии следов крови на стоматологическом инструментарии в реакции с азопирамом ПРИНЦИП МЕТОДА. При взаимодействии азопирама с гемоглобином в присутствии пероксида водорода как окислителя образуются цветные продукты с хара
11455. Определение йодного числа жира для общей оценки ненасыщенных связей 31 KB
  Лабораторная работа Определение йодного числа жира для общей оценки ненасыщенных связей Принцип. Определение основано на способности ненасыщенных жирных кислот присоединять йод по месту двойных связей. Йодное число это количество йода в граммах присоединяемое ...
11456. ОПРЕДЕЛЕНИЕ СОДЕРЖАНИЯ МЕТАБОЛИТОВ МОНООКСИДА АЗОТА (НИТРИТОВ) В СЛЮНЕ 28.5 KB
  ЛАБОРАТОРНАЯ РАБОТА Определение содержания метаболитов монооксида азота нитритов в слюне НитрогенIIоксид NO это свободный радикал который образуется в организме из аргинина и выполняет роль мессенджера в ряде биологических процессов. Аргинин цитрулин NO ...
11457. ОПРЕДЕЛЕНИЕ НАЛИЧИЯ ХОЛИНСОДЕРЖАЩИХ ФОСФОЛИПИДОВ В СМЕСИ ЛИПИДОВ 30 KB
  ЛАБОРАТОРНАЯ РАБОТА 1 Определение наличия холинсодержащих фосфолипидов в смеси липидов ПРИНЦИП МЕТОДА. Холинсодержащие фосфолипиды имеющие четвертичный атом азота проявляют свойства сильных органических оснований поэтому способны связывать красители бром...