我根据boost.log教程创建了一个非常简单的测试程序:
#include <boost/log/trivial.hpp>
#define LOG_TRACE BOOST_LOG_TRIVIAL(trace)
#define LOG_DEBUG BOOST_LOG_TRIVIAL(debug)
#define LOG_INFO BOOST_LOG_TRIVIAL(info)
#define LOG_WARN BOOST_LOG_TRIVIAL(warning)
#define LOG_ERR BOOST_LOG_TRIVIAL(error)
#define LOG_FATAL BOOST_LOG_TRIVIAL(fatal)
int
main(int argc,
const char *argv[])
{
LOG_TRACE << "A trace severity message";
LOG_DEBUG << "A debug severity message";
LOG_INFO << "An informational severity message";
LOG_WARN << "A warning severity message";
LOG_ERR << "An error severity message";
LOG_FATAL << "A fatal severity message";
return 0;
}
当我在valgrind下运行它时,它会产生7个丢失记录,这与我在使用boost.log的更复杂程序中看到的结果一致。有没有人知道消除这些泄漏的方法,还是我只需要压制它们?