Share via


Klasse CUserException

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Gegenereerd om een bewerking door eindgebruikers te stoppen.

Syntaxis

class CUserException : public CSimpleException

Opmerkingen

Gebruik CUserException deze optie als u het uitzonderingsmechanisme voor het genereren/vangen van uitzonderingen wilt gebruiken voor toepassingsspecifieke uitzonderingen. 'Gebruiker' in de klassenaam kan worden geïnterpreteerd als 'mijn gebruiker heeft iets uitzonderlijks gedaan dat ik moet afhandelen'.

A CUserException wordt meestal gegenereerd nadat de globale functie AfxMessageBox is aangeroepen om de gebruiker te informeren dat een bewerking is mislukt. Wanneer u een uitzonderingshandler schrijft, verwerkt u de uitzondering speciaal omdat de gebruiker meestal al op de hoogte is gesteld van de fout. Het framework genereert deze uitzondering in sommige gevallen. Als u een CUserException uzelf wilt gooien, waarschuwt u de gebruiker en roept u vervolgens de globale functie AfxThrowUserExceptionaan.

In het onderstaande voorbeeld bevat een functie die bewerkingen bevat die de gebruiker mogelijk niet kunnen waarschuwen en een CUserException. De aanroepende functie onderschept de uitzondering en verwerkt deze speciaal:

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

Zie het artikel CUserException voor meer informatie over het gebruik.

Overnamehiërarchie

CObject

CException

CSimpleException

CUserException

Requirements

Koptekst: afxwin.h

Zie ook

Hiërarchiegrafiek
CException-klasse