Manipulation d'exception dans CPP |
|
|
Concept de manipuler l'exception
|
Le concept de la manipulation d'exception est tr�s simple. L'id�e fondamentale est simplement de soulever un drapeau d'erreur quand quelque chose tourne mal. Apr�s, il y a un syst�me qui toujours surveillance pour des ces drapeau d'erreur. en conclusion, le syst�me pr�c�dent appelle un code de gestion d'erreur si un drapeau d'erreur est rep�r�.
|
Program Flow
soulevant un drapeau imaginaire d'erreur s'appelle lancement vers le haut d'une erreur. Quand l'erreur est jet�e le syst�me global r�pondra en d�celant une erreur. Entourant le bloc du code erreur-sensible avec une manipulation d'exception s'appelle essai d'ex�cuter le bloc de code.
|
Les dispositifs les plus puissants de la manipulation d'exception est, une erreur peuvent �tre jet�s au-dessus des fronti�res de fonction. Signifie que si un d'les fonctions les plus profondes sur une pile a l'erreur, ceci peut �tre propagation � une fonction sup�rieure s'il y a essayer-bloquent d'un code l�. Ceci permettra aux programmeurs de mettre un code de gestion d'erreur dans un endroit, comme la principal-fonction du programme.
|
Manipulation d'exception de C++
|
Concepteurs du langage de programmation de C++, prolong�s la langue avec les structures de manipulation d'exception. Les commandes qui sont employ�es lient �troitement aux termes utilis�s dans la manipulation d'exception (comme d�crit ci-dessus). Bloc de code que vous voulez pour essayer des d�buts en indiquant une commande de � essai � et en entourant un bloc avec les croisillons boucl�s. � l'int�rieur de ce bloc, on te permet de jeter les erreurs de occurrence avec une commande de � jet �. Vous devriez indiquer l'erreur et ceci doit �tre une classe. Apr�s qu'essayer-bloquer soit ferm�, attraper-bloquent commence. Ceci est illustr� dans le code ci-dessous.
|
try
{
...
...
throw Exception()
...
...
}
catch( Exception e )
{
...
...
}
|
|
Ici l'exception est la classe d�finie avec le constructeur sans des param�tres pass�. Il sera utile d'avoir l'information sur quel type d'erreur s'est produit. Ceci peut �tre fait par deux m�thodes. L'un ou l'autre peut d�finir les diff�rentes exception-classes et puis les jeter selon l'erreur produit. Ou peut donner un param�tre de classe contenir le message d'erreur et permettre � une classe de montrer le message.
|
Syst�me de transport d'exception
|
Une classe que nous sommes sur le point de concevoir devrait devoir stocker les informations sur une erreur qui s'est produite et une classe devrait pouvoir montrer le message d'erreur. Le code suivant montre cette fonctionnalit�.
|
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
|