Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dilemparkan untuk menghentikan operasi pengguna akhir.
Sintaks
class CUserException : public CSimpleException
Keterangan
Gunakan CUserException saat Anda ingin menggunakan mekanisme pengecualian throw/catch untuk pengecualian khusus aplikasi. "Pengguna" dalam nama kelas dapat ditafsirkan sebagai "pengguna saya melakukan sesuatu yang luar biasa yang perlu saya tangani."
CUserException biasanya dilemparkan setelah memanggil fungsi AfxMessageBox global untuk memberi tahu pengguna bahwa operasi telah gagal. Ketika Anda menulis handler pengecualian, tangani pengecualian khususnya karena pengguna biasanya telah diberi tahu tentang kegagalan. Kerangka kerja melemparkan pengecualian ini dalam beberapa kasus. Untuk melemparkan CUserException diri Anda sendiri, beri tahu pengguna lalu panggil fungsi AfxThrowUserExceptionglobal .
Dalam contoh di bawah ini, fungsi yang berisi operasi yang mungkin gagal memperingatkan pengguna dan melempar CUserException. Fungsi panggilan menangkap pengecualian dan menanganinya secara khusus:
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.
}
Untuk informasi selengkapnya tentang menggunakan CUserException, lihat artikel Penanganan Pengecualian (MFC).
Hierarki Warisan
CUserException
Persyaratan
Header: afxwin.h