簡體   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