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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Rabbit
0 / 0 / 0
Регистрация: 05.09.2015
Сообщений: 49
#1

Exception Handling. Собственный класс для перехвата исключений - C++

05.09.2015, 14:36. Просмотров 292. Ответов 4
Метки нет (Все метки)

Помогите, пожалуйста, с данной задачей.

Задача:
Define an exception class called tornadoException. The class should have two constructors, including the default constructor. If the exception is thrown with the default constructor, the method what should return "Tornado: Take cover immediately!". The other constructor has a single parameter, say, m, of the int type. If the exception is thrown with this constructor, the method what should return "Tornado: m miles away; and approaching!" Write a C++ program to test the class tornadoException.

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
35
36
37
38
39
40
41
42
43
44
class tornadoException
 {
 public:
    tornadoException()
    {
        message = "Tornado: Take cover immediately!";
    }
    tornadoException(int m)
    {
        miles = m;
        message = "Tornado: ";
        cout <<  m << "miles away; and approaching!" << endl;
    }
    string what()
    {
        return message;
    }
 private:
    int miles;
    string message;
 };
 
int main()
 {  
    int distance;
 
    try
    {
        cout << "Enter distance";
        cin >> distance;
        cout << endl;
 
        if (distance == 0)
            throw tornadoException();
        
    }
    catch (tornadoException me)
    {
        cout << me.what() << endl;
    }
    
    
    system("pause");
 }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2015, 14:36     Exception Handling. Собственный класс для перехвата исключений
Посмотрите здесь:

Exception Handling Classes - C++
Задача: Write a program that prompts the user to enter a person’s date of birth in numeric form such as 8-27-1980. The program then...

Templates (composition). exception handling run-time error - C++
Код компилируется. Если делать циклы для push and pop размера такого чтоб не превышало размеры Стока то все работает нормально если...

Класс (объект) для перехвата сообщений своих окон - C++
Кто сможет показать как сделать реальный пример: Задача: для использования в VBA создать класс(объект) для перехвата сообщений своих...

Обработка исключений (Exception) - C++
Всем приветю У меня возникла такая ситуация: в main создаю локальную переменную типа long, затем прошу пользователя задать эту переменную и...

Создание своего класса исключений, наследование std::exception - C++
хотел создать свой класс исключений пронаследовав от std::exception, но немного запутался в конструкторах... конструктор же не наследуется,...

Написать собственный класс для ввода и вывода строки, подсчета количества символов в строке - C++
как написать собственный с++ класс для ввода и вывода строки, подсчета количества символов в строке

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13063 / 7326 / 817
Регистрация: 27.09.2012
Сообщений: 18,081
Записей в блоге: 3
Завершенные тесты: 1
05.09.2015, 14:40     Exception Handling. Собственный класс для перехвата исключений #2
C++
1
2
3
4
5
6
7
8
9
    tornadoException() : miles(0) , message ("Tornado: Take cover immediately!")
    {
    }
    tornadoException(int m) : miles (m)
    {
        message = "Tornado: ";
        message += std::to_string( m ) ;
        message += " miles away; and approaching!" ;
    }
Rabbit
0 / 0 / 0
Регистрация: 05.09.2015
Сообщений: 49
05.09.2015, 14:50  [ТС]     Exception Handling. Собственный класс для перехвата исключений #3
Объясните пжл что неправильно.
А программа для тестирования правильно написана?
Croessmah
Модератор
Эксперт CЭксперт С++
13063 / 7326 / 817
Регистрация: 27.09.2012
Сообщений: 18,081
Записей в блоге: 3
Завершенные тесты: 1
05.09.2015, 14:51     Exception Handling. Собственный класс для перехвата исключений #4
Цитата Сообщение от Rabbit Посмотреть сообщение
А программа для тестирования правильно написана?
C++
1
2
3
4
5
6
7
8
9
10
11
12
    try
    {
        cout << "Enter distance";
        cin >> distance;
        cout << endl;
 
        if (distance == 0)
            throw tornadoException();
        else
            throw tornadoException(distance);
        
    }
имхо, лучше наследоваться от std::exception со всеми вытекающими.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.09.2015, 15:11     Exception Handling. Собственный класс для перехвата исключений
Еще ссылки по теме:

Класс Стек Stack. не работает класс исключений - C++
Здравствуйте! Решил проверить код на пригодность, но почему то класс исключений выскакивает на ошибке. Я никак не могу понять такие вещи...

Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... - C++
Написать обработчик исключений ситуации при преобразовании указателя на класс B до указателя на абстрактный класс А ... как сделать...

STL и собственный класс - C++
Подскажите, пожалуйста, как можно переопределить функцию STL для собственного класса. Например, push_front() или push_back() не работают...

Собственный класс итератора - C++
Добрый день! Пишу сейчас одну библиотеку (не использующею STL и другие библиотеки) и для контейнеров решил написать класс итератора: ...

Собственный класс-итератор - C++
Создаю класс-итератор для класса Студенты. Сам класс студенты: #ifndef STUDENTS_H #define STUDENTS_H #include &lt;string&gt; ...

класс исключений - C++
class exception { public: exception() throw(); exception(const bad_exception &amp;ob) throw(); virtual -exception() throw(); ...


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

Или воспользуйтесь поиском по форуму:
Rabbit
0 / 0 / 0
Регистрация: 05.09.2015
Сообщений: 49
05.09.2015, 15:11  [ТС]     Exception Handling. Собственный класс для перехвата исключений #5
Большое спасибо!
Yandex
Объявления
05.09.2015, 15:11     Exception Handling. Собственный класс для перехвата исключений
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru