当前位置 : 主页 > 编程语言 > c语言 >

日志等级类的测试

来源:互联网 收集:自由互联 发布时间:2023-08-25
日志等级类的测试 枚举这里并没有什么要测试的地方,主要测试的地方就是转换的接口, 上面报错的地方也就是说tostring是类的成员函数,使用的时候需要先定义一个类的对象出来,但

日志等级类的测试

枚举这里并没有什么要测试的地方,主要测试的地方就是转换的接口,

image-20230730111420726

上面报错的地方也就是说tostring是类的成员函数,使用的时候需要先定义一个类的对象出来,但是这个函数不需要传递this指针,所以可以定义成static 静态成员函数

image-20230730111920828

打印:

image-20230730111944179

再对头文件进行修改,防止重复包含:

/*
1、定义枚举类:枚举出日志等级
2、提供转换接口:将枚举转换为对应字符串
*/
#ifndef __M_LEVEL_H__
#define __M_LEVEL_H__
namespace nmzlog
{
    class logLevel{
        public:
        //定义枚举类型,在类里面定义起到作用域限定的作用,必须通过类来进行访问,避免枚举冲突
        enum class value{
            UNKNOW = 0,
            DEBUG,
            INFO,
            WARN,
            ERROR,
            FATAL,
            OFF
        };
         //还要向外面提供一个枚举的转换接口
         static const char* toString(logLevel::value level)
         {
            //根据对应的日志等级返回字符串
            switch (level)
            {
            case logLevel::value::DEBUG:
                return "DEBUG";
            case logLevel::value::INFO:
                return "INFO";
            case logLevel::value::WARN:
                return "WARN";
            case logLevel::value::ERROR:
                return "ERROR";
            case logLevel::value::FATAL:
                return "FATAL";  
            case logLevel::value::OFF:
                return "OFF"; 
            }
             return "UNKNOW";
         }
    };  
}
#endif
【本文转自:美国服务器 http://www.558idc.com/mg.html欢迎留下您的宝贵建议】
上一篇:AcWing 860. 染色法判定二分图
下一篇:没有了
网友评论