Udostępnij za pośrednictwem


Klasa CUserException

Zgłoszony, aby zatrzymać operację użytkownika końcowego.

class CUserException : public CSimpleException

Uwagi

Użyj CUserException kiedy chcesz używać mechanizmu wyjątek throw/catch wyjątków specyficznych dla aplikacji. "Użytkownik"w nazwie klasy mogą być interpretowane jako"my użytkownika did wyjątkowych, że konieczne jest coś".

A CUserException jest zazwyczaj generowane po wywołaniu funkcji globalnej AfxMessageBox , aby powiadomić użytkownika, że operacja nie powiodła się.Podczas pisania obsługi wyjątków obsługi wyjątku specjalnie, ponieważ użytkownik zwykle została już zgłoszona awarii.Ramy generuje wyjątek ten w niektórych przypadkach.Zgłaszanie CUserException sobie użytkownika, a następnie wywołać funkcja globalna AfxThrowUserException.

W poniższym przykładzie funkcja zawierająca operacje, które mogą nie działać ostrzega użytkownika i generuje CUserException.Wywołanie funkcji przechwytuje wyjątek i obsługuje go specjalnie:

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.
}

Aby uzyskać więcej informacji na temat używania CUserException, zobacz artykuł Obsługi wyjątków (MFC).

Hierarchii dziedziczenia

CObject

CException

CSimpleException

CUserException

Wymagania

Nagłówek: afxwin.h

Zobacz też

Informacje

Diagram hierarchii

Klasa CException

AfxMessageBox

AfxThrowUserException

Inne zasoby

Jak I: tworzenie własnych klas wyjątków niestandardowe?