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

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

Войти
Регистрация
Восстановить пароль
 
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
#1

Exception - C++

07.05.2013, 15:36. Просмотров 687. Ответов 12
Метки нет (Все метки)

Реализовать свой класс исключений zero, производный от std::exception (используется при попытке деления вектора на ноль).
В классе zero должна быть перегружена функция what(). Функция должна возвращать строку "division_by_zero".
помогите его реализовать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2013, 15:36     Exception
Посмотрите здесь:

Unhandled exception... C++
Unhandled exception C++
exception и cerr C++
C++ exception EEFFACE
C++ exception
Не ловит exception C++
C++ Обработка exception
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2451 / 1623 / 238
Регистрация: 24.11.2012
Сообщений: 3,993
07.05.2013, 15:42     Exception #2
<troll-mode on>
Пишешь класс, называешь его в соответствии с заданием, наследуешь от std::exception, добавляешь в него метод what, который возвращает указанную строку.
</troll-mode on>
Ну серьезно, три строчки кода на все про все.
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
07.05.2013, 15:59  [ТС]     Exception #3
А что делать если не хочет выводить "division_by_zero" когда
C++
1
2
3
4
5
try{
    v = v / 0;
}catch(std::exception& e){
    cout <<  e.what() << "\n";
}
0x10
2451 / 1623 / 238
Регистрация: 24.11.2012
Сообщений: 3,993
07.05.2013, 17:47     Exception #4
Yandex, так это ведь уже совсем другой вопрос. Покажите кто такой v.
winver
-334 / 3 / 0
Регистрация: 25.09.2012
Сообщений: 102
07.05.2013, 17:50     Exception #5
любая числовая переменная с положительным значением.
0x10
2451 / 1623 / 238
Регистрация: 24.11.2012
Сообщений: 3,993
07.05.2013, 17:56     Exception #6
winver, в таком случае исключение и не будет сгенерировано. И почему именно положительное значение? =_=
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
07.05.2013, 17:58  [ТС]     Exception #7
class chislo{
public:
double x, y;
// перегруженные операторы +, -, +=, / и т.д.
}
chislo v;
CheshireCat
Эксперт С++
2910 / 1238 / 78
Регистрация: 27.05.2008
Сообщений: 3,321
07.05.2013, 17:58     Exception #8
Yandex, компилятор какой? (И какая ось?)
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
07.05.2013, 18:00  [ТС]     Exception #9
Visual C++ 2008 Express Edition
CheshireCat
Эксперт С++
2910 / 1238 / 78
Регистрация: 27.05.2008
Сообщений: 3,321
07.05.2013, 18:02     Exception #10
А, ну так и с чего ты взял, что должно генерироваться плюсовое исключение? В MSVC++ оно выбросит SEH-исключение.
0x10
2451 / 1623 / 238
Регистрация: 24.11.2012
Сообщений: 3,993
07.05.2013, 18:03     Exception #11
CheshireCat, как вы узнали какое исключение будет выброшено, если автор не предоставил реализацию перегруженного оператора?)
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
07.05.2013, 18:20  [ТС]     Exception #12
0x10, class chislo{
public:
double x, y;
// перегруженные операторы +, -, +=, / и т.д.
}
chislo v;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.05.2013, 18:49     Exception
Еще ссылки по теме:

C++ exception C++
First chance exception at $77ADB09E. Exception class EAccessViolation with message 'Access Violation'. Process C++
C++ Exception переполнение
C++ Unhandled exception
C++ Выдаёт ошибку "Unhandled exception at 0x00007F exception: std::bad_alloc in memory location"

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

Или воспользуйтесь поиском по форуму:
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
07.05.2013, 18:49     Exception #13
Yandex, Где реализация оператора "/"???
Yandex
Объявления
07.05.2013, 18:49     Exception
Ответ Создать тему
Опции темы

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