自己最近写的一些程序用到异常处理,现在加深一下印象:
class CMyPro
{
..
public:
void function1(){}
void function2(){}
}
class CMyProException
{
public:
ScriptException(int errid,LPCTSTR log = "")
{
m_errid = errid;
strcpy(m_log,log);
}
void printErrLog()
{
AfxMessageBox(m_log);
}
CString GetErrorInfo()
{
return CString(m_log);
}
protected:
int m_errid;
char m_log[500];
};
main()
{
.....
try
{
if(!myPro.function1())
{
throw ScriptException(0, ".......失败!");//抛出异常,后面一定要跟一个异常处理,这里可以放到function1里面抛出,只要是try里面即可。
return FALSE;
}
}
catch(CMyProException &e)
{
e.printErrLog();
.............
}
}
要习惯于写异常,判断错误。