Trattamento di eccezioni in CPP |
|
|
Concetto di maneggiamento dell'eccezione
|
Il concetto di trattamento di eccezioni � molto semplice. L'idea di base � semplicemente alzare una bandierina di errore quando qualcosa va male. Dopo, ci � un sistema che sempre allerta per i questi bandierina di errore. per concludere, il sistema precedente denomina un codice di trattamento degli errori se una bandierina di errore � macchiata.
|
Il flusso di programma che alza una bandierina immaginaria di errore � denominato gettare su un errore. Quando l'errore � gettato il sistema generale risponder� interferendo un errore. Circondando il blocco del codice errore-sensibile con un trattamento di eccezioni � denominato provare ad eseguire il blocco del codice.
|
Le caratteristiche pi� potenti del trattamento di eccezioni �, un errore possono essere gettate sopra i contorni di funzione. Significa che se uno dell'funzioni pi� profonde su una pila ha errore, questo pu� essere propag ad una funzione superiore se ci � prov-ostruisce di un codice l�. Ci� permetter� che i programmatori mettano un codice di trattamento degli errori in un posto, come la principale-funzione del programma.
|
Trattamento di eccezioni di C++
|
Progettisti del linguaggio di programmazione di C++, estesi la lingua con le strutture di trattamento di eccezioni. Gli ordini che sono usati collegano strettamente ai termini usati nel trattamento di eccezioni (come precedentemente descritto). Blocco del codice che desiderate per provare gli inizio specificando un ordine �di prova� e circondando un blocco con i sostegni ricci. All'interno di questo blocco, siete permessi gettare gli errori d'avvenimento con un ordine �del tiro�. Dovreste specificare l'errore e questo deve essere un codice categoria. Dopo che prov-ostruire sia stato chiuso, interfer-ostruiscano inizi. Ci� � illustrata nel codice qui sotto.
|
try
{
...
...
throw Exception()
...
...
}
catch( Exception e )
{
...
...
}
|
|
Qui l'eccezione � il codice categoria definito con il costruttore senza i parametri passato. Sar� utile avere l'Info su che tipo di errore ha accaduto. Ci� pu� essere fatta con due metodi. Uno pu� definire i eccezione-codici categoria differenti ed allora gettarlo secondo l'errore accaduto. O pu� dare un parametro di codice categoria contenere il messaggio di errore e permettere che un codice categoria visualizzi il messaggio.
|
Sistema di trattamento di eccezioni
|
Un codice categoria che stiamo circa per progettare dovrebbe dovere memorizzare le informazioni su un errore che ha accaduto e su un codice categoria dovrebbe potere visualizzare il messaggio di errore. Il codice seguente mostra questa funzionalit�.
|
class CException
{
public:
char* message;
CException( char* m )
{
message = m
};
Report();
}
|
|
Keywords Exception Handling, exception source, exception errors, exception table, exception package,
database handling, exception xml, string exception, exception message, exception catching,
exception net, exception error, thread handling, client handling, try exception,
exception handler, exception finally, error handling, thread exception, xml handling,
exception form, function exception, string handling, exception vb, exception code,
exception object, form handling, exception raise, session handling, exception example,
message handling
|