Название: Не ловится throw в QT 4.6(Windows) Отправлено: spectre71 от Апрель 21, 2010, 16:23 Простое окно с кнопкой
На нажатие кнопки кидаем исключение: Цитировать void MainWindow::on_pushButton_clicked() { throw 0; } Ловим исключение в main: Код: int main(int argc, char *argv[]) Все отлично ловится в QT 4.5.2 (http://good.png) Однако не ловится в QT 4.6.2 (http://bad.png) В чем проблема? Очередной прикол троллей? Исходники для проверки приаттачены. Название: Re: Не ловится throw в QT 4.6 Отправлено: BRE от Апрель 21, 2010, 16:41 Linux, qt-4.6.2-8.fc11.x86_64
Открывает окно ERROR. В консоли стандартная фраза: :) Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. Название: Re: Не ловится throw в QT 4.6(Windows) Отправлено: spectre71 от Апрель 21, 2010, 17:42 Спасибо BRE
Название: Re: Не ловится throw в QT 4.6(Windows) Отправлено: viktor.kz от Апрель 22, 2010, 10:34 Qt 4.6.0 + Windows 7 = всё ловится
First-chance exception at 0x75b99617 in throw_test.exe: Microsoft C++ exception: int at memory location 0x0015b814.. First-chance exception at 0x75b99617 in throw_test.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.. First-chance exception at 0x75b99617 in throw_test.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.. Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication::notify() and catch all exceptions there. |