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

Exception - C++

Восстановить пароль Регистрация
 
Yandex
 Аватар для Yandex
2 / 2 / 0
Регистрация: 31.01.2013
Сообщений: 61
07.05.2013, 15:36     Exception #1
Реализовать свой класс исключений 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
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,309
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
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,309
07.05.2013, 18:02     Exception #10
А, ну так и с чего ты взял, что должно генерироваться плюсовое исключение? В MSVC++ оно выбросит SEH-исключение.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
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 переполнение

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

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

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