我正在探索boost :: tribool,并对以下行为感到惊讶.
{
using namespace boost;
boost::tribool t(indeterminate);
assert(t==indeterminate); // This assertion fails!
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我这样做,断言传递.
assert(indeterminate(t));
Run Code Online (Sandbox Code Playgroud)
在任何一种情况下都没有编译器警告或错误.任何人都有一个很好的解释为什么这应该是?
| 归档时间: |
|
| 查看次数: |
1650 次 |
| 最近记录: |