Форум программистов, компьютерный форум CyberForum.ru

Генерация исключений из <exception> - C++

Восстановить пароль Регистрация
 
ninja2
 Аватар для ninja2
230 / 186 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
15.04.2013, 04:06     Генерация исключений из <exception> #1
Здорова господа!
Я тут пытаюсь разобраться с классом std::exception.
Как перехвачивать исключения то я понял функцию what() вызвал и все.
А как же мне генерировать исключения используя этот класс?
От допустим я решил создать какое нить свое приложение и решил использовать как бы готовый класс exception и хочу из него генерировать исключения, но чото у меня ничо не получается.
От тестовый код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// exception example
#include <iostream>
using std::cout;
using std::endl;
#include <exception> 
using std::exception;
using std::bad_alloc;
//using std::bad_cast; //owibka ne mojet podklyuchitca
using std::bad_exception;
//using std::bad_typeid; // owibka ne bul deklorirovan
//using std::bad_weak_ptr; // owibka ne bul dekrorirovan
//using std::ios_base::failure;//owibka ne bul deklorirovan
 
//using std::bad_exception;
using std::logic_error;//op9t6 ne deklorirovan owibka
//using std::runtime_error;
 
int main () {
  try
  {     
    throw logic_error();
    //throw ios_base::failure();//owibka ne bul deklorirovan
    //throw bad_weak_ptr();//owibka ne bul deklorirovan
    //throw bad_typeid();//owibka ne bul deklorirovan
    throw bad_exception();
    //throw bad_cast();//owibka ne mojet podklyuchitc9
    throw bad_alloc();
  }
  catch (exception& e)
  {
    cout << "exception caught: " << e.what() << '\n';
  }
  return 0;
}
Почему то половина типов исключений не подключаются. Допустим я создал свой пользовательский тип и мне нужно с генерировать исключение out_of_range(). Ну и что пробовал я его подключить из стандартного класса пишет типо ошибка не был подключен.
Вообще не ясно можно ли использовать этот класс (exception) в своих приложения или нужно создавать свои собственные?
Если да то как же мне тогда генерировать типы исключений?
Ничерта не ясно.

Добавлено через 9 минут
Ладно разобрался половина из этих подключений оказывается не к <exception> относятся, а к <stdexcept>
http://www.cplusplus.com/reference/exception/exception/ по этой ссылке фиг чо разберешь.

Нету нормального какого небудь сайта по С++ на русском языке, а то там фиг чо разберешь, коряво все написано?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 04:06     Генерация исключений из <exception>
Посмотрите здесь:

Обработка исключений C++
Обработка исключений с пмощью структурированной обработки исключений C++
C++ Обработка исключений
Обработка исключений C++
C++ Генерация и обработка исключений
C++ Обработка исключений (Exception)
First chance exception at $77ADB09E. Exception class EAccessViolation with message 'Access Violation'. Process C++
Создание своего класса исключений, наследование std::exception C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 03:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru