📄 xerror.h
字号:
#include "student.h"
#ifndef XERROR_
#define XERROR_
#include <string.h>
class XError
{
public:
XError(const char * pszLocation,
const char * pszReason):
sReason(pszReason),sLocation(pszLocation)
{
}
virtual void display(ostream& out)const;
protected:
const string sReason;
const string sLocation;
};
class XInvalidStudent:public XError
{
public:
XInvalidStudent(const Student * pS,
const char * pszReason):
XError("Student::isLegal",pszReason),
pStudent(pS)
{
}
virtual void display(ostream& out)const;
protected:
const Student * pStudent;
};
class XFileError:public XError
{
public:
enum ErrCode
{
GENERIC_FILE_ERR,
FILE_NOT_FOUND,
FILE_CREATE_ERROR,
FILE_READ_ERROR,
FILE_WRITE_ERROR
};
XFileError(const char * pszLocation,
const char * pszFileName,
const char * pszReason,
const ErrCode ec):
XError(pszLocation,pszReason),
sFileName(pszFileName)
{
error=ec;
}
virtual void display(ostream& )const;
ErrCode errcode()
{
return error;
}
protected:
string sFileName;
ErrCode error;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -