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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.74
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
#1

Throw exceptions - C++

29.10.2009, 21:38. Просмотров 2337. Ответов 11
Метки нет (Все метки)

В массиве нужно отловить все исключения.
Скока их ?
Zerodevide,out_of_range_,wrong_type,bad_alloc.
Привидите еще примеры.Желательно с кодом.
P.s На данный момент на компе нет студии пишу тока так .
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.10.2009, 21:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Throw exceptions (C++):

exceptions (no matching function for call to .) - C++
Помогите, пожалуйста, разобраться с исключениями: double ctok(double c) { return c + 273.15; } int main() { try { ...

Как отлавливать exceptions от stl? - C++
Использую вектор, в описнии написано Return value f a reallocation happens, the storage is allocated using the container's...

Throw() - C++
#include "stdafx.h" #include <iostream> using namespace std; void handler(double test) throw() { if (sizeof(double) ==...

try, catch, throw - C++
пишу класс namespace mystd { const uint32_t def_size = 1 << 20; //default memory container template<typename T> ...

Try, catch, throw - C++
Подскажите, как с помощью try, catch, throw, обработать исключение на вводимый тип данных? Например, допускается только тип int, что...

Noexcept и throw() - C++
здравствуйте, подскажите, в каких случаях нужно использовать noexcept за исключением деструкторов и swap?

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
29.10.2009, 23:25 #2
Цитата Сообщение от Sekt Посмотреть сообщение
В массиве
Что значит "в массиве" ? В массиве объектов? Просто в массиве?
Поясните.
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
30.10.2009, 10:32  [ТС] #3
Просто в массиве.

P.s Можно и в массиве объектов.
BornLeader
50 / 46 / 1
Регистрация: 16.05.2008
Сообщений: 162
30.10.2009, 11:15 #4
Цитата Сообщение от Sekt Посмотреть сообщение
В массиве нужно отловить все исключения.
C++
1
2
3
4
5
6
try
{
  // код способный вызвать исключение
}catch(...) // любой тип исключений будет перехвачен
{
}
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
30.10.2009, 11:17  [ТС] #5
етот Ice я знаю ,но он не прокатывает иногда.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
30.10.2009, 13:33 #6
Цитата Сообщение от Sekt Посмотреть сообщение
етот Ice я знаю ,но он не прокатывает иногда.
Быть такого не может.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,368
30.10.2009, 13:40 #7
Различай C++-исключения и структурные исключения. Первые - перехватываются блоками catch(что-то, или эллипсис), вторые - нет. Некоторые компиляторы умеют транслировать структурные исключения (SEH) в C++-исключения, либо существуют сторонние решения (например, гуглить по лексеме SeException).

Sekt, так какие исключения ты имеешь в виду, говоря про "все"?
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
30.10.2009, 13:44 #8
CheshireCat, Так как Sekt является конечным пользователем некоего "продукта", не думаю что SEH ему вообще нужно.
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
30.10.2009, 22:13  [ТС] #9
Вообщем вопрос уже закрыт.
Спасибо.
P.s
Требование было отловить все исключения.
Не писать (...),а писать вручную.
niXman
Эксперт C++
3134 / 1446 / 49
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
30.10.2009, 22:14 #10
Цитата Сообщение от Sekt Посмотреть сообщение
Не писать (...),а писать вручную.
Поясните.
CyBOSSeR
Эксперт C++
2300 / 1670 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
30.10.2009, 23:08 #11
Как я понял человеку нужно разработать массив и предусмотреть все возможные исключительные ситуации при работе с ним (как возбуждение, так и перехват).
Sekt
156 / 155 / 10
Регистрация: 29.04.2009
Сообщений: 637
31.10.2009, 13:15  [ТС] #12
CyBoSSer you are right.
P.s НЕ catch(...),а catch(int)например для wrong type,
catch(divede_by_zero_) и т.д
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2009, 13:15
Привет! Вот еще темы с ответами:

try-throw-catch - C++
#include <iostream> #include <math.h> using namespace std; class Drob { public: int obchuslennia (int a, int...

throw, try, catch - C++
Пожалуйста, помогите разобраться в том, что это такое, и как его правильно использовать. Где можно об этом почитать? P.S. только начал...

Try..catch..Throw - C++
Объясните пожалуйста разницу. Желательно с примерами, например деление на ноль, ну или чтобы было сразу несколько исключений. Расскажите...

ф-ция с throw - C++
Встретил такую мне незнакомую запись: тип имя_функции( параметры ) throw(что-то) { тело_ф-ции } Что дает такая запись с...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
31.10.2009, 13:15
Ответ Создать тему
Опции темы

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