介农酥 |
2020-05-25 13:55 |
log4cplus在QtCreator报错
LOG4CPLUS_INFO(logger, LOG4CPLUS_TEXT("Hello world")); 报错 no viable conversion from 'std::__cxx11::basic_ostringstream<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::__string_type' (aka 'basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >') to 'const log4cplus::tchar *' (aka 'const wchar_t *') ? 感觉自己确实是初级啊
我自己追踪了下
#define LOG4CPLUS_INFO(logger, logEvent) \ LOG4CPLUS_MACRO_BODY (logger, logEvent, INFO_LOG_LEVEL)
#define LOG4CPLUS_MACRO_BODY(logger, logEvent, logLevel) \ LOG4CPLUS_SUPPRESS_DOWHILE_WARNING() \ do { \ log4cplus::Logger const & _l \ = log4cplus::detail::macros_get_logger (logger); \ if (LOG4CPLUS_MACRO_LOGLEVEL_PRED ( \ _l.isEnabledFor (log4cplus::logLevel), logLevel)) { \ LOG4CPLUS_MACRO_INSTANTIATE_OSTRINGSTREAM (_log4cplus_buf); \ _log4cplus_buf << logEvent; \ log4cplus::detail::macro_forced_log (_l, \ log4cplus::logLevel, _log4cplus_buf.str(), \ LOG4CPLUS_MACRO_FILE (), __LINE__, \ LOG4CPLUS_MACRO_FUNCTION ()); \ } \ } while (0) \ LOG4CPLUS_RESTORE_DOWHILE_WARNING()
#define LOG4CPLUS_SUPPRESS_DOWHILE_WARNING() /* empty */ #define LOG4CPLUS_RESTORE_DOWHILE_WARNING() /* empty */
既然是空,为什么不直接去掉。 |
|