CUserException 類別
擲回阻止使用者作業。
class CUserException : public CSimpleException
備註
要為應用程式特定的例外狀況時,使用擲回或攔截例外狀況機制使用 CUserException 。「 使用者」類別名稱可以解譯我的使用者做出我需要處理例外的事」。
在呼叫 CUserException 全域函式之後 AfxMessageBox 通知使用者通常會擲回作業失敗。 當您撰寫例外處理常式 (Exception Handler) 時,請特別處理例外狀況,因為使用者已經通常會告知已失敗。 架構會在特定情況下擲回這個例外狀況。 要擲回 CUserException 警告使用者,然後呼叫全域函式 AfxThrowUserException。
在下列範例中,會包含可能失敗警示使用者並擲回 CUserException作業的函式。 呼叫的函式會特別地攔截例外狀況並處理它:
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.
}
如需使用 CUserException的詳細資訊,請參閱本文 例外處理 (MFC)。
繼承階層架構
CUserException
需求
**標頭檔:**afxwin.h