int main()
{
string commonLayout = "%d{%Y-%m-%d %H:%M:%S %Q} | %p | %t | %m [%l] %n";
string logPath = "d:\\testlog.txt";
std::auto_ptr<Layout> layout(new PatternLayout(LOG4CPLUS_TEXT(commonLayout)));
SharedAppenderPtr appender(new FileAppender(LOG4CPLUS_TEXT(logPath), std::ios_base::app));
appender->setLayout(layout);
Logger logger = Logger::getInstance(LOG4CPLUS_TEXT("root.test"));
logger.setLogLevel(DEBUG_LOG_LEVEL);
logger.addAppender(appender);
LOG4CPLUS_INFO(logger, LOG4CPLUS_TEXT("run"));
return 0;
}
当结构体字节对齐使用默认的时候 程序运行正常
log4cplus使用的是8字节对齐方式, 如果程序设置成其他字节对齐 就会出现如下错误:
还会出现如下提示:
HEAP[testLog4.exe]: Heap block at 004EAB60 modified at 004EACD7 past requested si