我已经有一段时间没有使用过C ++了,我觉得语法有点迷失。有人可以从boost::log
库教程中解释以下几行吗?
logging::core::get()->set_filter
(
logging::trivial::severity >= logging::trivial::info
);
据我所知,它是函数set_filter()
调用,但需要filter
个对象:
BOOST_LOG_API void set_filter(filter const& filter)
和表达式:
logging::trivial::severity >= logging::trivial::info
返回bool?这里operator >=
超载了吗?我试图通过寻找定义和宏来解决它,但我看不到任何运算符重载。这看起来不合逻辑。它有什么作用?它是如何工作的?
答案 0 :(得分:3)
logging::trivial::severity >= logging::trivial::info
返回一个函数对象。
函数对象进行比较。
由Boost.Phoenix库完成。