С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
taras atavin
3570 / 1754 / 91
Регистрация: 24.11.2009
Сообщений: 27,567
#1

Как бросать эти исключения? - C++

14.12.2012, 13:24. Просмотров 569. Ответов 6
Метки нет (Все метки)

C++
1
throw popOnEmpty();
,
C++
1
throw pushOnFull(Value);
. Что нибудь надо выше заинкладить/написать? Что именно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.12.2012, 13:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как бросать эти исключения? (C++):

Стоит ли бросать C++ - C++
Народ всем привет вот я сейчас задался вопросом стоит ли мне продолжать изучать C++(учу 2.5 месяца но сейчас испытываю трудности, язык...

Может ли функция бросать смешенные типы данных - C++
Доброе время суток! Сижу переписываю свои нацарапанные методы (там с памятью работаю код коменчу и прочие) И тут возник вопрос может...

Как свиртуализировать исключения? - C++
Мне очень нравится как реализован перехват исключений в Python и Java: там в блоке catch не надо перечислять все виды исключений, а...

Как генерировать исключения? - C++
Как сгенерировать исключение. Как выход индекса за пределы допустимого диапозона. Изучаю API

Как создавать информативные исключения? - C++
как создавать информативные исключения??? нигде не могу найти внятного объяснения :( единственный способ какой я знаю throw...

Как правильно вызывать исключения? - C++
как правильно вызывать исключения? я вот пишу например так: throw std::exception("Error!"); исключение то выбрасывается, но сообщение...

6
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.12.2012, 13:26 #2
taras atavin, А теперь расскажи, что это за исключения такие?
0
taras atavin
3570 / 1754 / 91
Регистрация: 24.11.2009
Сообщений: 27,567
14.12.2012, 13:37  [ТС] #3
Пустой и полный стек. Если они дико не стандартные, то что надо написать?
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
14.12.2012, 13:43 #4
taras atavin, Эм. Классы создать, производные от наиболее подходящего стандартного класса исключений
1
CheshireCat
Эксперт С++
2896 / 1245 / 78
Регистрация: 27.05.2008
Сообщений: 3,405
14.12.2012, 13:44 #5
А почему, собственно, они должны быть "дико нестандартные"? Унаследуй их от runtime_error (ведь это же ошибки периода исполнения, не так ли?) или от range_error, и они станут вполне себе стандартными.
C++
1
2
3
4
5
6
7
8
#include <stdexcept>
 
class popOnEmpty: public runtime_error { ... };
class pushOnFull: public runtime_error { ... };
 
throw popOnEmpty("Stack is empty, cannot pop!");
 
throw pushOnFull("Stack is full!", Value);
1
taras atavin
3570 / 1754 / 91
Регистрация: 24.11.2009
Сообщений: 27,567
14.12.2012, 13:45  [ТС] #6
Цитата Сообщение от ForEveR Посмотреть сообщение
taras atavin, Эм. Классы создать, производные от наиболее подходящего стандартного класса исключений
А как?
0
Пaтрик
416 / 391 / 39
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
14.12.2012, 13:52 #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class popOnEmpty : public std::runtime_error
{
public:
    explicit popOnEmpty(const std::string& message)
        : std::runtime_error(message.c_str())
    {
    }
 
    explicit popOnEmpty(const char *message)
        : std::runtime_error(message)
    {
    }
};
 
/*    */
throw popOnEmpty("Stack is empty");
0
14.12.2012, 13:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.12.2012, 13:52
Привет! Вот еще темы с ответами:

Как перебросить исключение дальше в обработчике исключения? - C++
Допустим, я работаю с сетью и пытаюсь обратиться к некторому хосту и если он не отвечает, то бросается исключение-объект наследник...

Как правильно обрабатывать исключения в приложении на базе графического движка? - C++
Я с исключениями работал только в консольных приложениях - там удобно реализовывался метод бросания интов, которые представляли собой код...

Как добавить свою программу г лобальные исключения всех антивирусов? - C++
Я сделал одну очень полезную для многих ботоделов программу. Хочется её по распространять, но есть одна маленькая проблема. Программа...

Как передать управление в блок catch после системного исключения (компилятор g++)? - C++
Вот пример: не удаётся это сделать #include &lt;windows.h&gt; #include &lt;stdio.h&gt; //Эта функция- НОВЫЙ обработчик...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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