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.


 

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

51721. Психолого-педагогические методики диагностики, проектирования, изучения и накопления передового опыта 78 KB
  Психологопедагогические методики диагностики проектирования изучения и накопления передового опыта. Понятие педагогического опыта его разновидности : ошибочный отстающий передовой массовый. Критерии передового педагогического опыта. Методы изучения передового педагогического опыта.
51724. Виступ на педраді вчителя початкових класів 26 KB
  Зважаючи на те що соціальний розвиток починається в дитинстві можна припустити що початкова школа забезпечує становлення особистості її інтелектуальний фізичний і соціальний розвиток. Сучасний етап розвитку освіти вимагає інноваційних процесів нових ідей та творчих пошуків забезпечення всебічного розвитку людини як особистості й найвищої цінності суспільства розвиток її талантів розумових і фізичних здібностей виховання високих моральних якостей. Реалізація акмеологічного підходу до розвитку особистості здійснюється ще в молодшому...
51726. Компьютерная грамотность как исходная цель введения курса ОИВТ в школу 33 KB
  План Организационный момент Постановка цели занятия и проверка домашнего задания Создание схемы к теории Подведение итогов занятия и задание на дом Тип занятия: комбинированный. Продолжительность занятия: 1 часа. 2004 Организационный момент приветствие учащихся проверка посещаемости Постановка цели занятия. Проверка домашнего задания желающие выходят к доске и рассказывают конспект несколько человек отвечают письменно Создание схемы Подведение итогов занятия и задание на дом повторить пройденные темы и быть...
51728. Хімія – природнича наука. Хімія в навколишньому світі. Короткі відомості з історії хімії 35 KB
  Хімія природнича наука. Хімія в навколишньому світі. Чи чули ви слово хімія Що ж таке хімія Для чого вона нам потрібна ІІІ. До них належить і хімія.