2017-12-19 3 views
0

qt로 작업하면서 GUI 및 여러 스레드가있는 큰 프로젝트가 있습니다.Qt 예외 처리 - 캐치를 시도하십시오

예외 처리를 추가하고 싶습니다. 나는 그걸 봤어 어떤 튜토리얼이나 몇 가지 관련 답변을 찾지 못했습니다.

일부 사이트에서는 try catch를 지원하지 않습니다.

qt 지원을 시도합니까? 아니면 어떤 오류 처리? 예인 경우 방향 또는 자습서를 제공 할 수 있습니까?

탱크 있습니다.

+0

http://doc.qt.io/qt-5/exceptionsafety.html – drescherjm

답변

1

신호 슬롯 호출을 통해 예외를 throw 할 수 없습니다. Qt 응용 프로그램에서 예외를 사용하여 수행하려는 모든 작업이 허용됩니다. 이 슬롯 내에서 처리되지 않는 Qt의 신호 슬롯 연결기구에 의해 호출 슬롯에서 예외 발생

http://doc.qt.io/qt-5/exceptionsafety.html#signals-and-slots

정의되지 않은 행동으로 간주된다.

class MyClass : public QObject 
{ 
    Q_OBJECT 
public slots: 
    void mySlot() 
    { 
     throw std::logic_error(""); // Undefined behavior when invoked by a signal 
    } 
};