如何在C++中使类对象成为检查条件?

Amu*_*umu 0 c++ boost

Boost有这样的事情:

void OnAccept( const boost::system::error_code & ec)
{
        if( ec )
        {
         ...
        }
}
Run Code Online (Sandbox Code Playgroud)

error_code是一个班级.要覆盖哪个运算符来创建类对象

pmr*_*pmr 5

你应该使用安全的bool习语.这可以防止您在简单地提供转换时发生的大多数陷阱bool.

提供一些上下文:如果类型可以隐式转换为boolthrough operator bool() const,则可以在比较表达式中使用该类型的值,此转换没有任何意义.C++ 11解决方案将是一个显式转换运算符.