Partager via


current_exception

Obtient un pointeur intelligent vers l'exception actuelle.

exception_ptr current_exception();

Valeur de retour

Objet exception_ptr qui pointe vers l'exception actuelle.

Notes

Appelez la fonction current_exception dans un bloc catch. Si une exception a été levée et si le bloc catch peut l'intercepter, la fonction current_exception retourne un objet exception_ptr qui référence l'exception. Sinon, la fonction retourne un objet exception_ptr null.

La fonction current_exception capture l'exception en vol indépendamment de si l'instruction catch spécifie une instruction de déclaration d'exception.

Le destructeur de l'exception actuelle est appelé à la fin du bloc catch si vous n'avez pas levé à nouveau l'exception. Toutefois, même si vous appelez la fonction current_exception dans le destructeur, celle-ci retourne un objet exception_ptr qui référence l'exception actuelle.

Les appels successifs à la fonction current_exception retournent des objets exception_ptr qui font référence à des copies de l'exception actuelle. Par conséquent, les objets sont considérés comme inégaux car ils font référence à des copies, bien que les copies aient la même valeur binaire.

Voir aussi

Référence

<exception>

Transport d'exceptions entre les threads