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

Когда нужно использовать исключения - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Что означает using typename в шаблоне? http://www.cyberforum.ru/cpp-beginners/thread1598268.html
template < typename T > class Class_name { public: using value_type = T; ... что произошло в этом месте? Зачем? using value_type = T;
C++ Реализовать класс для сбора данных о системе из ключей реестра, выводящий полученные данные в файл Реализовать класс осуществляющий сбор данных о системе из ключей реестра и выводящий полученные данные в файл. С тем, что такое реестр Windowsможно ознакомиться тут:... http://www.cyberforum.ru/cpp-beginners/thread1598261.html
Все цифры строки заменить на их английские названия C++
должен быть обычный массив(не динамический без функций) в который вписываешь символы. программа должна все цифры, типа:1.2.3. заменять на слова: one ,two, three.
C++ Найти сумму всех элементов на побочной диагонали матрицы
1. Дана матрица с(6,6) в строках с положительным элементом на побочной диагонали найти сумму всех элементов. Если на побочной диагонали положительных элементов нет, то выдать об этом сообщение....
C++ Константный указатель на константу меняет значение http://www.cyberforum.ru/cpp-beginners/thread1598231.html
int d = 7; const int* const cd = &d; d = 8; qDebug()<<*cd;
C++ Макрос в собственном блоке Попытался ради интереса написать макрос в выделенном блоке (или как это правильно называется) не работае, а почему? int main(int argc, char *argv) { QCoreApplication a(argc, argv); ... подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4986 / 3043 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
01.12.2015, 17:43
Цитата Сообщение от Knjagskij Посмотреть сообщение
А если у нас два потока и один бросает исключение, то мы можем поймать его в другом?
Нет, исключения нужно обязательно поймать где-то в потоке, в котором оно возникло, если оно выйдет из точки входа потока, вызовется std::terminate.

Добавлено через 4 минуты
Сейчас накидаю вам пример.

Добавлено через 8 минут
Простенький пример.
С исключениями: http://ideone.com/1awEGD
Без исключений: http://ideone.com/ddJv4s
Тут всего один уровень вложенности (функция handlefiles вызывает проблемную функцию openfile). А представьте, если проблемных функций много, все могут вернуть разные ошибки, и много уровней вложенности, а нам надо ошибку обработать далеко от места её возникновения? Куча if'ов, возвраты кодов ошибок, которые функция по логике возвращать не должна (где-то в недрах не открылся файл, о котором пользователь и знать не должен, а ему из интерфейсной функции летит такой код ошибки).
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru