68933

Перехоплення всіх виняткових ситуацій

Лекция

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

Обробка виняткових ситуацій в мові C++ володіє додатковими властивостями і нюансами, які полегшують її застосування. Ці особливості описуються нижчим. Перехоплення всіх виняткових ситуацій В деяких випадках немає сенсу обробляти окремі типи виняткових ситуацій...

Украинкский

2014-09-27

32 KB

0 чел.

Лекція № 25

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

Обробка виняткових ситуацій в мові C++ володіє додатковими властивостями і нюансами, які полегшують її застосування. Ці особливості описуються нижчим.

Перехоплення всіх виняткових ситуацій

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

catch(...)

{

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

}

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

// В даному прикладі перехоплюються всі виняткові ситуації.

#include <iostream>

using namespace std;

void Xhandler(int test)

{

try {

if(test==0) throw test;

// Генерує об'єкт типу int 

if(test==l) throw 'a';

// Генерує об'єкт типу char 

if(test==2) throw 123.23;

// Генерує об'єкт типу double 

} catch (...) {

// Перехоплення всіх виняткових ситуацій

cout « "Перехоплення!\n";

}

}

int main() {

cout « "Початок\n";

 Xhandler(0) Xhandler(l) Xhandler(2)

 cout « "Кінець" return 0;

}

Результати роботи цієї програми приведені нижче.

Початок

Перехоплення!

Перехоплення!

Перехоплення!

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

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

//В даному прикладі за умовчанням використовується оператор catch (...)

#include <iostream>

using namespace std;

void Xhandler(int test)

{

try {

if(test==0) throw test;

// Генерується об'єкт типу int 

if(test==l) throw 'a1;

// Генерується об'єкт типу char 

if(test==2) throw 123.23;

// Генерується об'єкт типу double

catch(int i){

// Перехоплення виняткової ситуації типу int 

cout << "Перехоплення цілого числа\n";

}

catch(...){

// Перехоплення решти всіх виняткових ситуацій

cout « "Перехоплення!\n";

}

}

int main()

{

cout << "Початок\n";

Xhandler(O); Xhandler(l); Xhandler(2);

cout « "Кінець";

return 0; }

Результати роботи цієї програми представлені нижчим.

 

Початок

Перехоплення цілого числа

Перехоплення!

Перехоплення!

перехоплення!

Кінець

Цей приклад демонструє, що застосування оператора catch (...) — хороший спосіб перехоплювати всі виняткові ситуації, які небажано обробляти явно. Крім того, операторові catch (...) запобігає аварійне завершення програми при виявленні необробленої виняткової ситуації.


 

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

38143. Відпрацювання плануючої та звітної документації з питань морально-психологічного забезпечення основних видів бою 102 KB
  Закріпити знання одержані курсантами студентами в процесі самостійної роботи над навчальною методичною і науковою літературою; 2. Головною метою його роботи є оптимізація спільної військової діяльності міжособистісних взаємин а також моральнопсихологічного стану окремих військовослужбовців. ОСНОВНА ЧАСТИНА: Планування виховної роботи це визначення напрямів шляхів змісту засобів методів і форм щодо реалізації цілей виховної роботи прийняття конкретних адресних обґрунтованих рішень що стосуються реалізації заходів виховної роботи...
38144. Методика прогнозування і розрахунку психологічних втрат серед особового склад 162.5 KB
  МЕТОДИЧНА РОЗРОБКА проведення практичного заняття з навчальної дисципліни Моральнопсихологічне забезпечення військової діяльності Тема№5: Моральнопсихологічне забезпечення підготовки миротворчих підрозділів Сухопутних військ ЗС України Заняття №11: Методика прогнозування і розрахунку психологічних втрат серед особового склад Час: 2 години Мета заняття: 1. ОСНОВНА ЧАСТИНА: Сутність психологічної підготовки полягає у формуванні в особового складу таких моральнопсихологічних і бойових...
38145. Вивчення керівних документів з питань організації культурно-виховної та просвітницької роботи 94 KB
  МЕТОДИЧНА РОЗРОБКА проведення практичного заняття з навчальної дисципліни Моральнопсихологічне забезпечення військової діяльності Тема№6: Культурновиховна і просвітницька робота в Збройних Силах України Заняття №3: Вивчення керівних документів з питань організації культурновиховної та просвітницької роботи Час: 2 години Мета заняття: 1. Закріпити знання одержані курсантами студентами в процесі самостійної роботи над навчальною методичною і науковою літературою; 2. Основна частина 70...
38147. Керівні документи щодо організації військово-соціальної роботи в СВ ЗС України 105.5 KB
  Головною метою його роботи є оптимізація спільної військової діяльності міжособистісних взаємин а також моральнопсихологічного стану окремих військовослужбовців. ОСНОВНА ЧАСТИНА: Гострота соціальної ситуації у країні у Збройних Силах вимагає від органів військового управління посадових осіб вживання адекватних заходів щодо пом'якшення і запобігання впливу негативних соціальних факторів на соціальноправовий статус військовослужбовців. З метою забезпечення соціального захисту військовослужбовців у нашій країні за останні роки розроблена і...
38148. Керівні документи, що визначають зміст, систему організації та методику інформаційно-пропагандистського забезпечення в ЗС України 151.5 KB
  МЕТОДИЧНА РОЗРОБКА проведення практичного заняття з навчальної дисципліни Моральнопсихологічне забезпечення військової діяльності Тема№9: Інформаційнопропагандистське забезпечення в Збройних Силах України Заняття №2: Керівні документи що визначають зміст систему організації та методику інформаційнопропагандистського забезпечення в ЗС України Час: 2 години Мета заняття: 1.â 35 Обговорення питання №2 âКерівні документи щодо організації всіх видів інформування особового складу ЗС...
38149. Відпрацювання документації щодо різних видів усного викладання навчального матеріалу 151 KB
  МЕТОДИЧНА РОЗРОБКА проведення практичного заняття з навчальної дисципліни Моральнопсихологічне забезпечення військової діяльності Тема№9: Інформаційнопропагандистське забезпечення в Збройних Силах України Заняття №4: Відпрацювання документації щодо різних видів усного викладання навчального матеріалу Час: 2 години Мета заняття: 1. Заключна частина 10 ІНФОРМАЦІЙНОМЕТОДИЧНЕ ЗАБЕЗПЕЧЕННЯ Конституція України. Концепція виховної роботи у Збройних Силах та інших військових формуваннях...
38150. Відпрацювання плануючих та звітних матеріалів проведення інформування особового складу підрозділу 152.5 KB
  Інформаційнопропагандистське забезпечення в Збройних Силах України Заняття №5: Відпрацювання плануючих та звітних матеріалів проведення інформування особового складу підрозділу. Наказ Міністра оборони України від 18.2000 № 105 Про затвердження Інструкції про організацію вартової служби у Збройних Силах України. ОСНОВНА ЧАСТИНА: У Збройних Силах...
38151. Методи психологічного вивчення 132.5 KB
  Використовується у процесі дослідження явищ що сприймаються безпосередньо як метод наукового пізнавання змістовно відрізняється від спостереження в буденному житті. Методика спостереження включає: вибір ситуації та обєкта спостереження; узагальнення теоретичних уявлень про досліджувану реальність і виділення мети дослідження; побудову програми або схеми спостереження у вигляді переліку ознак явищ одиниць спостереження з детальною їх презентацією а також спосіб і форму фіксації результатів спостереження щоденниковий запис...