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

Два catch-обработчика - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строки http://www.cyberforum.ru/cpp-beginners/thread310477.html
В строке символов выполнит следующие преобразования: а) если между двумя одинаковыми цифрами нет других цифр,удалить все стоящие между ними символы; б) заменить на "*" все символы, стоящие между...
C++ Динамический список динамических списков Всем экспертам привет. Нужна категорическая помощь). Задача такая, надо разобраться как работает этот код(Заголовочный файл). Комментарии написать. Самому толку не хватает. А уж потом в main() я бы... http://www.cyberforum.ru/cpp-beginners/thread310475.html
C++ Односвязный список. Поменять местами элементы
Привет. Есть односвязный список. Например: 5 элементов, поменять местами 2 и 3 Как поменять местами элементы p1 и p2. Что я сделал? нашел позиции этих p1 и p2 через циклы. Как поменять? Я думаю,...
Возврат значения по ссылке C++
Долго гуглил, но что-то так и не понял. Почему слева от знака = может использоваться только функция, возвращающая ссылку?
C++ Осуществить движение окружности по дуге http://www.cyberforum.ru/cpp-beginners/thread310445.html
Условие: Осуществить такое движение,при котором окружность движется по-другой окружности,Оставаясь внутри ее. 1е) Я понимаю что таких как мы много и как мы достали нормальных людей 2е) Я не хочу...
C++ Посмотрите код пожалуйста... #include <stdio.h> #include <stdlib.h> int main() { int n,*b,i,k; double x; float **M;// двухмерная матрциа подробнее

Показать сообщение отдельно
Gepar
1177 / 533 / 20
Регистрация: 01.07.2009
Сообщений: 3,517

Два catch-обработчика - C++

01.06.2011, 22:47. Просмотров 375. Ответов 3
Метки (Все метки)

Читаю книгу по с++ и там написано что catch-обработчик для int не имеет смысла когда есть catch-обработчик для типа double так как всё равно будет преобразование до double и будет отдаваться предпочтение catch-обработчику для double. Ну я вот для пробы и написал маленькую программку:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int main()
{
    int x;
    cin>>x;
    try
    {
        if (x>10)
         throw 5;
        if (x<10)
         throw 2.33;
    }
 
    catch (double)
    {
        cout<<"Get double";
    }
    catch (int)
    {
        cout<<"Get int";
    }
    return 0;
}
Да только у меня какраз таки catch-обработчики не пересекаются и int ловит int, а double ловит double. С чем это связано и как же тогда звучит стандарт по этому поводу?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru