log实现自动增加行号

刚刚同事传授了一个 默认写日志和文件名的技巧,特此记录一下,

class CLog
{
public:
CLog(char *file,int line)
:m_file(file),m_line(line)
{
}
void operator()(char *format,...)
{
printf("%s(%d)",m_file,m_line);
va_list vl;
va_start(vl,format);
vprintf(format,vl);
va_end(vl);
}

private:
char *m_file;
int m_line;
};

#define LLOG CLog(__FILE__,__LINE__)

main()

{

LLOG("%d",5); 非常巧妙的实现了自动添加行号,C++基础看来还是要再加强

}

你可能感兴趣的:(log实现自动增加行号)