Russian Qt Forum
Ноябрь 23, 2024, 09:59 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Как пользоваться исключениями  (Прочитано 9107 раз)
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #15 : Июнь 28, 2015, 17:28 »

На этом типе и валится:
terminate called after throwing an instance of 'mqtt::exception'
  what():  std::exception

Но сейчас вставлю в функцию throw, посмотрим.
upd: все то же самое.
Был в похожей ситуевине (вот валится на любом испускании), методом втыка нашел что помогает выключить "dead strip code" (ну это в терминах Xcode, как в mingw не в курсе). Т.е. просто баг компилятора (точнее линкера).

Конечно шансов что у Вас то же самое очень мало. Самое мерзкое в этих исключениях - что разобраться "логически" (не побоюсь этого слова  Улыбающийся) - просто не видно как. Отладчик или вообще потерял стек или наводит на какие-то исходники куда Макар телят не гонял. Такие залеты отливаются в неск дней "плясок с бубном", и приходят соображения типа "та ну его нафиг, пусть будет менее стройно зато с отладкой без проблем".
« Последнее редактирование: Июнь 28, 2015, 17:31 от Igors » Записан
sergek
Гипер активный житель
*****
Offline Offline

Сообщений: 872


Мы должны приносить пользу людям.


Просмотр профиля
« Ответ #16 : Июнь 28, 2015, 17:54 »

В принципе, библиотека не очень большая. Можно все исключения заменить на возврат кодов.
Наверное, так и сделаю потом. Не очень удобно - с каждой новой версией придется вносить правки.
Записан

Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
Akon
Гость
« Ответ #17 : Июнь 29, 2015, 09:33 »

Ну хорошо, а если в библиотеке написать свою функцию и оттуда выбросить исключение?

Да проблема с флагами сборки. Заменять исключения на коды ошибок считаю не вариант.
Записан
sergek
Гипер активный житель
*****
Offline Offline

Сообщений: 872


Мы должны приносить пользу людям.


Просмотр профиля
« Ответ #18 : Июнь 29, 2015, 12:20 »

Да проблема с флагами сборки. Заменять исключения на коды ошибок считаю не вариант.
Одинаково все. По крайней мере, что касается исключений. Вот проекты.
В принципе, могу и исходники, но вам это будет гиморно - нужно установить брокер, собрать библиотеки (C и C++).
Записан

Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.049 секунд. Запросов: 23.