关于项目中的错误信息,最好采用哪种结构呢?目前我想到看到的大概是下面两种方案,想问下哪种方案好一点,有没有更好的方案,比如根本不用枚举。
-
定义一个枚举:
enum ERR { ERR_Success = 0, …… ERR_xxxxFailure = xxx, ERR_xxxxFailure = xxxx, };定义一个 dictionary:
dictionary<int, string>{}; 对应存入枚举对应的,报错详细信息。 -
有些人会将很多函数返回值,定义为 int 或者枚举类型 ERR
int run() { …… return ERR_Success; } 最后在使用的时候 { if(run() != ERR_Success) { …… } } -
有些人会采取 setError 的方式,在其他地方调用 getError
bool run() { …… return setError(ERR); } bool setError(int value) { …… if(value != ERR_Success) { return false; } return true; } string getError() { …… return error; } 最后在使用的时候 { if(!run()) { getError(); …… } }