繁体   English   中英

如何测试std :: error_code不是错误?

[英]How do I test that an std::error_code is not an error?

我有一个返回std::error_code 我对错误消息不是特别感兴趣,只是方法是否成功。

测试std::error_code表示成功操作的最佳方法是什么?

在使用ASIO库时,我遇到了类似的情况。 正如他们的博客文章所暗示的那样, std::error_code如下方式进行测试:

std::error_code ec;
// ...    
if (!ec)
{
  // Success.
}
else
{
  // Failure.
}

深入挖掘后,我在C ++标准Google小组中发现了这个 (更近期的)讨论,这证实了上述陈述,但也提出了关于std::error_code的当前设计是否足够简单的问题。

简而言之,如果您只需要简单地告诉成功错误,那么!static_cast<bool>(errorCode)就是您所需要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM