Classe CException
La classe base per tutte le eccezioni nella libreria MFC.
class AFX_NOVTABLE CException : public CObject
Membri
Costruttori pubblici
Nome |
Descrizione |
---|---|
Costruisce un oggetto CException. |
Metodi pubblici
Nome |
Descrizione |
---|---|
Rimuove un oggetto CException. |
|
Indica un messaggio di errore in una finestra di messaggio per l'utente. |
Note
Poiché CException è una classe base astratta non è possibile creare direttamente gli oggetti CException ; è necessario creare gli oggetti di classi derivate. Se è necessario creare una classe di stile CException, utilizzare una delle classi derivate indicate come modello. Assicurarsi che la classe derivata inoltre utilizzare IMPLEMENT_DYNAMIC.
Le classi derivate e le relative descrizioni sono elencate di seguito:
Una classe base per le eccezioni alle risorse critiche di MFC |
|
Stato di un'eccezione di argomento non valido |
|
L'eccezione di memoria insufficiente |
|
Richiesta per un'operazione non supportata |
|
Eccezione Archivio-specifica |
|
Per un'eccezione specifica |
|
Risorsa di Windows non trovata o non creabile |
|
Eccezione OLE |
|
Eccezione del database (ovvero termini di eccezione che si verificano per le classi di database MFC basate su ODBC) |
|
Eccezione di invio di (automazione OLE) |
|
Un'eccezione che indica che una risorsa non viene trovata |
|
Eccezione dell'oggetto di accesso ai dati (ovvero termini di eccezione che si verificano per le classi DAO) |
|
Eccezione Internet (ovvero termini di eccezione che si verificano per le classi Internet). |
Queste eccezioni vengano utilizzate con le macro TIRO, THROW_LAST, PROVA, FERMO, AND_CATCHe END_CATCH. Per ulteriori informazioni sulle eccezioni, vedere Elaborazione delle eccezionio, vedere l'articolo Gestione delle eccezioni (MFC).
Per intercettare un'eccezione specifica, utilizzare la classe derivata appropriata. Per rilevare tutti i tipi di eccezioni, utilizzare CExceptionquindi utilizzare CObject::IsKindOf per distinguere CExceptiondi classi derivate. Si noti che funziona il CObject::IsKindOf solo per le classi presentano dichiarato con la macro IMPLEMENT_DYNAMIC, per sfruttare il controllo di tipo dinamico. Qualsiasi CExceptionnella classe derivata creata deve utilizzare la macro IMPLEMENT_DYNAMIC, anche.
È possibile correlare i dettagli sulle eccezioni all'utente chiamando GetErrorMessage o ReportError, due funzioni membro che utilizzano le classi derivate di CException.
Se viene rilevata da una macro, l'oggetto CException viene eliminato automaticamente; non eliminare manualmente. Se viene rilevata utilizzando una parola chiave catch, non viene eliminato automaticamente. Vedere l'articolo Gestione delle eccezioni (MFC) per ulteriori informazioni su quando eliminare un oggetto di exeption.
Gerarchia di ereditarietà
CException
Requisiti
Header: afx.h
Vedere anche
Riferimenti
Altre risorse
Ricerca di categorie: Creazione di mie proprie classi di eccezione personalizzate?