CUserException

Un CUserException viene generata per interrompere un'operazione per l'utente finale. Quando si desidera utilizzare il meccanismo di eccezione throw/catch per le eccezioni specifiche dell'applicazione, utilizzare CUserException . "Utente" nel nome della classe può essere interpretata come «mio utente fatto qualcosa di eccezionale che è necessario gestire».

Una CUserException di solito viene generata dopo la chiamata della funzione globale AfxMessageBox per notificare all'utente che un'operazione è riuscita. Quando si scrive un gestore eccezioni, gestire l'eccezione appositamente dal momento che l'utente di solito è già stato notificato il fallimento. Il framework genera questa eccezione in alcuni casi. Per lanciare un CUserException , avvertire l'utente e quindi chiamare la funzione globale AfxThrowUserException.

Nell'esempio seguente, una funzione che contiene le operazioni che potrebbero non riuscire avverte l'utente e genera un CUserException. La funzione chiamante l'eccezione e gestisce appositamente:

void DoSomeOperation)
{
 nbsp;  / / Trasformazione
    / / Se qualcosa va storto...
    AfxMessageBox ("x operazione non riuscita");
    AfxThrowUserException ();
}

BOOL TrySomething)
{
    PROVARE
    {
        / / Potrebbe gettare una CUserException o altra eccezione.
        DoSomeOperation (); 
    }
    CATCH (CUserException, e)
    {
        return FALSE;    / / Utente già notificato.
    }
    A&ND_CATCH (CException, e)
    {
        / / Per altri tipi di eccezione, notifica all'utente qui.
        AfxMessageBox ("qualche operazione non riuscita");
        return FALSE;
    }
    END_CATCH
    return TRUE;   / / Generata alcuna eccezione.
}

Per ulteriori informazioni sull'utilizzo di CUserException, vedere l'articolo eccezioni nel manuale del programmatore di Visual C++.

# include lt;afxwin.h>

I membri di classe base |nbsp; Gerarchia Chart

Vedere a&nchenbsp;CException, AfxMessageBox, AfxThrowUserException

Index