Russian Qt Forum

Qt => Общие вопросы => Тема начата: Вудруф от Декабрь 06, 2005, 09:06



Название: Обработка исключений в Qt
Отправлено: Вудруф от Декабрь 06, 2005, 09:06
Такое ощущение, что где-то внутри Qt ловит выбрасываемые мной исключения. А мне нужно (!), чтобы они ловились в main, а затем программа корректно завершала свою работу...
Кто что посоветует?


Название: Обработка исключений в Qt
Отправлено: Вудруф от Декабрь 07, 2005, 11:20
Проблему я обошёл другим способом, но вопрос остался:
Если при работе программы было выброшено исключение std::exception, то каким образом запретить Qt ловить его?
Если она его ловит, то программа просто висит, а по идее должна завершить работу.


Название: Обработка исключений в Qt
Отправлено: SLiDER от Декабрь 07, 2005, 19:13
Цитата: "Вудруф"
Проблему я обошёл другим способом, но вопрос остался:
Если при работе программы было выброшено прерывание std::exception, то каким образом запретить Qt ловить его?
Если она его ловит, то программа просто висит, а по идее должна завершить работу.


Гмммммм :roll: . А я всегда считал, что это называется исключения.  :?


Название: Обработка исключений в Qt
Отправлено: Вудруф от Декабрь 08, 2005, 07:37
Ага. Извините :)
Всё исправил.


Название: Обработка исключений в Qt
Отправлено: Вудруф от Декабрь 08, 2005, 10:19
В некоторых случаях Qt их не обрабатывает, а возвращает в main. Проблема возникла при использовании QMainWindow.


Название: Обработка исключений в Qt
Отправлено: Вудруф от Декабрь 08, 2005, 10:36
Отлов исключений сделан только в qobject.h, равно как только там и встречается макрос QT_NO_EXCEPTIONS.
Но кто-нибудь может мне объяснить, зачем оно там ловится? Программа у меня в этом случае просто виснет..