current_exception
Uzyskuje inteligentny wskaźnik na bieżący wyjątek.
exception_ptr current_exception();
Wartość zwracana
Obiekt exception_ptr, wskazujący na bieżący wyjątek.
Uwagi
Wywołanie funkcji current_exception w bloku catch.Jeśli wyjątek jest w locie i blok catch może przechwycić wyjątek, funkcja current_exception zwraca obiekt exception_ptr, który odwołuje się do wyjątku.W przeciwnym razie funkcja zwraca wartość null obiektu exception_ptr.
Funkcja current_exception przechwytuje wyjątek, który jest w locie, bez względu na to, czy instrukcja catch określa instrukcję zgłoszenie wyjątku.
Destruktor dla bieżącego wyjątku jest wywoływany pod koniec bloku catch, jeśli wyjątek nie jest ponownie zgłaszany.Jednak nawet jeśli wywołasz funkcję current_exception w destruktorze, funkcja zwraca obiekt exception_ptr, który odwołuje się do bieżącego wyjątku.
Kolejne wywołania funkcji current_exception zwracają obiekty exception_ptr, które odnoszą się do różnych kopii bieżącego wyjątku.W związku z tym obiekty są porównane jako nierówne, ponieważ odnoszą się one do poszczególnych kopii, mimo że kopie mają tę samą wartość binarną.