在C语言中,往往通过函数的返回值来判断函数的调用情况。例如,返回0,表示调用成功;返回-1,表示调用失败(函数执行失败,并且用errno来表示出错原因).也有一些函数使用多个值来表示函数的调用情况,例如,返回0,表示调用成功;返回1,表示调用失败,错误原因是文件打开失败;返回2,表示调用失败,错误原因是内存不足;如此等等.
下面介绍的这个方法是:将函数的返回值定义为一个枚举类型.
例如,在Cherokee的source中,有:
可以看出,返回值被限定在-4~6的取值范围之内,并且每个取值的意义一目了然.
调用处可以这样写了: