在实际开发中, 经常设计错误码和错误信息, 这么来搞吧:

#include <iostream>
#include <string>
using namespace std;

enum
{
	ERR_XXX1 = -10001, 
	ERR_XXX2 = -10002,
};

typedef struct _ErrMsg
{
	int errCode;
	char szStrMsg[256];
}ErrMsg;

ErrMsg g_ErrMsg[] =
{
	{ERR_XXX1, "error 1"},
	{ERR_XXX2, "error 2"},
};

string getErrMsg(int errCode)
{
	int nSize = sizeof(g_ErrMsg) / sizeof(g_ErrMsg[0]);
	int i = 0;
	for(i = 0; i < nSize; i++)
	{
		if(errCode == g_ErrMsg[i].errCode)
		{
			return g_ErrMsg[i].szStrMsg;
		}
	}

	return "no match err msg";
}

int main()
{
	cout << getErrMsg(-10001) << endl;
	cout << getErrMsg(-1) << endl;

    return 0;
}
       很常见, 不多说。





本文转载:CSDN博客