3

我已经有一段时间没有使用 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

返回布尔值?operator >=这里超载了吗?我试图通过查找定义和宏来解决这个问题,但我看不到任何运算符重载。在我看来这不合逻辑。它有什么作用?它是如何工作的?

4

1 回答 1

3

logging::trivial::severity >= logging::trivial::info返回一个函数对象。

函数对象进行比较。

它由 Boost.Phoenix 库完成。

于 2013-10-27T21:27:49.200 回答