Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2011, 21:09   #1
РагнаР
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 25
По умолчанию Странности с исключениями

Довольно странное(для меня) поведение исключения.
Код:
Код C++

number number::operator -(const number &a)const
{
        number sum;
        sum.Erase();
        number c(*this);
        if(c<a)
        {
                throw error();          
        }
        else
        {
                sum.size=c.size;        
        }
Это исключение обрабатывается как стандартное(то есть выскакивает сообщение об ошибке)
А если же записать так:
Код:
Код C++

number number::operator -(const number &a)const
{
        number sum;
        throw error();
        sum.Erase();
        number c(*this);
то обрабатывается, как мое исключение(то есть выполняет то, что написано в catch. Не могу понять почему, ведь должно обрабатывать одинаково.
РагнаР вне форума Ответить с цитированием
Старый 08.03.2011, 21:57   #2
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

может проблемы возникают в этих строках и до твоего исключения дело не доходит?
Код:
sum.Erase();
number c(*this);
counter вне форума Ответить с цитированием
Старый 08.03.2011, 22:56   #3
РагнаР
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 25
По умолчанию

действительно, убрал Erase и заработало.
РагнаР вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
странности ControlServiceEx() m_kostik Win Api 5 28.10.2010 20:39
странности с ICQ VovanZ Софт 7 19.06.2010 23:45
Странности в Builder 6 Foxtrod C++ Builder 10 03.10.2009 01:09
Странности Chrome` а ]Wowan[ Софт 1 27.04.2009 04:11
Разобраться с исключениями... Utkin Общие вопросы по программированию, компьютерный форум 5 10.02.2009 17:08