CUserException

Eine CUserException wird ausgelöst, um einen Endbenutzer-Vorgang anzuhalten. Verwenden Sie CUserException , wenn Sie werfen/Catch Ausnahmeverfahren für Applikations-spezifische Ausnahmen verwenden möchten. "User" in den Namen der Klasse kann interpretiert werden, wie"meine Benutzer etwas außergewöhnliches jene ich brauche zu behandeln."

Ein CUserException wird in der Regel ausgelöst, nach dem Aufrufen der globalen Funktion AfxMessageBox um den Benutzer zu benachrichtigen, den ein Vorgang fehlgeschlagen ist. Beim Schreiben von eines Ausnahmehandlers behandeln Sie die Ausnahme, besonders, da der Benutzer in der Regel bereits den Fehler gemeldet wurden. Das Framework löst diese Ausnahme in einigen Fällen. Selbst eine CUserException werfen, warnen des Benutzers und rufen anschließend die globale Funktion AfxThrowUserException.

Im folgenden Beispiel eine Funktion mit Vorgängen, die fehlschlagen könnten warnt den Anwender und löst eine CUserException. Die aufrufende Funktion die Ausnahme abgefangen und behandelt es speziell:

void DoSomeOperation)
{
 &Nbsp;  / / Verarbeitung
    / / Wenn etwas schief geht...
    AfxMessageBox ("die X Operation fehlgeschlagen");
    AfxThrowUserException ();
}

BOOL TrySomething)
{
    VERSUCHEN
    {
        / / Eine CUserException oder eine andere Ausnahme auslösen könnte.
        DoSomeOperation (); 
    }
    CATCH (CUserException, e)
    {
        Return FALSE;    / / Benutzer bereits mitgeteilt.
    }
    AND_CATCH (CException, e)
    {
        / / Für andere Ausnahmetypen benachrichtigen Benutzer hier.
        AfxMessageBox ("einige Vorgang ist fehlgeschlagen");
        Return FALSE;
    }
    END_CATCH
    TRUE zurück;   / / Keine Ausnahme ausgelöst.
}

Weitere Informationen zur Verwendung von CUserExceptionfinden Sie im Artikel Ausnahmen im Visual C++ Programmer's Guide.

# include lt;afxwin.h>

Basis-Klassenmember |nbsp; Hierarchiediagramm

Siehe auch&Nbsp;CException, AfxMessageBox, AfxThrowUserException

Index