如何集中处理一个模块的出错行为呢?我的想法是创建一个错误处理类对象。
#ifndef __ERROR_H__
#define __ERROR_H__
#define ELEVEL_DEBUG 0
#define ELEVEL_INFO 1
#define ELEVEL_WARNING 2
#define ELEVEL_ERROR 3
#define ELEVEL_FATAL 4
namespace LinWin
{
class CError
{
public:
virtual
int OnError(
int level) =
0;
virtual
int OnError(
int code,
int level) =
0;
};
}
#endif
我把出错分为两种情况:第一种是返回的自定义的错误码;第二种是可以通过GetLastError()或者errno来获取错误码。因此,在这个抽象出错类中,我给出了两个接口。 既然出错的行为集中在一起处理,那么,退出的时机是否也可以集中在一块儿处理呢?可以试试:
#ifndef __EXIT_H__
#define __EXIT_H__
namespace LinWin
{
class CExit
{
public:
virtual
bool OnExit() =
0;
virtual
void SetExit() =
0;
};
}
#endif
退出类的两个接口:第一个是否退出;第二个是设置退出状态为真(初始状态为假)。 这样两个简单的类,实现的功能肯定是有限制的。毕竟是一种尝试,就先这样,以后再慢慢完善吧!
转载请注明原文地址: https://ju.6miu.com/read-962388.html