Sdílet prostřednictvím


Třída CUserException

Vyvolání ukončení operace koncového uživatele.

class CUserException : public CSimpleException

Poznámky

Použít CUserException Chcete-li pomocí throw/úlovku výjimku pro specifické aplikace výjimky. "Uživatel"v názvu třídy lze interpretovat jako"Můj uživatele bylo výjimečné, že je třeba zpracovat něco."

A CUserException je obvykle vyvolána po volání globální funkce AfxMessageBox upozornit uživatele, že operace se nezdařila.Při zápisu popisovač výjimky zpracovat výjimku, zvláště od uživatele obvykle již byla oznámena selhání.Rámci způsobí v některých případech tuto výjimku.Má být vyvolána CUserException sami, upozorní uživatele a potom voláním globální funkce AfxThrowUserException .

V následujícím příkladu obsahuje operace, které může dojít k selhání funkce upozornění a vyvolá CUserException .Volání funkce úlovky výjimku a zpracovává speciálně:

void DoSomeOperation()
{
   // Processing 
   // If something goes wrong...
   AfxMessageBox(_T("The x operation failed"));
   AfxThrowUserException();
}

BOOL TrySomething()
{
   try
   {
      // Could throw a CUserException or other exception.
      DoSomeOperation(); 
   }
   catch(CUserException* pe)
   {
      pe->Delete();
      return FALSE;    // User already notified.
   }
   catch(CException* pe)
   {
      // For other exception types, notify user here.
      pe->ReportError();
      return FALSE;
   }
   return TRUE;   // No exception thrown.
}

Další informace o použití CUserException , naleznete v článku Zpracování výjimek (MFC).

Hierarchii dědičnosti

CObject

CException

CSimpleException

CUserException

Požadavky

Záhlaví: afxwin.h

Viz také

Referenční dokumentace

Graf hierarchie

Třída CException

AfxMessageBox

AfxThrowUserException

Další zdroje

Jak I: vytvoření vlastních tříd výjimek vlastní?