Compartilhar via


Classe CUserException

Lançada para interromper uma operação de usuário final.

class CUserException : public CSimpleException

Comentários

Use CUserException quando você deseja usar o mecanismo de exceção throw/para capturar exceções específicas do aplicativo. “ O usuário” no nome da classe pode ser interpretado como “my usuário faz algo excepcional que eu preciso de manipular.”

CUserException geralmente é lançado após chamar a função global AfxMessageBox para notificar o usuário que uma operação falhou. Quando você escreve um manipulador de exceção, tratar a exceção especialmente desde que o usuário tiver sido notificado geralmente já de falha. A estrutura lança esta exceção em alguns casos. Para lançar CUserException você mesmo, alerte o usuário e então chame a função global AfxThrowUserException.

Em o exemplo abaixo, uma função que contém as operações que podem falhar alertas o usuário e lançam CUserException. A função de chamada captura a exceção e tratá-lo especialmente:

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

Para obter mais informações sobre como usar CUserException, consulte o artigo manipulação de exceção (MFC).

Hierarquia de herança

CObject

CException

CSimpleException

CUserException

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Gráfico da hierarquia

Classe CException

AfxMessageBox

AfxThrowUserException

Outros recursos

Como: eu faço Crie minhas próprias classes de exceção personalizada?