Boost错误代码可读描述 [英] Boost error codes human-readable description

查看:419
本文介绍了Boost错误代码可读描述的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  if(!error)
{
//做东西
}
else
{
std :: cout<<< 错误:<<错误<<的std :: ENDL;
//处理错误
}

但错误不是人 - 可读(例如连接到没有证书的SSL服务器给出错误asio.ssl:335544539)。有没有更好的方法来显示错误?

解决方案

如果你可能使用 boost :: system :: error_code 您可以致电:

  error.message()

以获得更人性化的讯息。



使用 operator< 转换为:

  os< ec.category()。name()<<< ':'<< ec.value()

这里您可以查看中的可用成员的详细概述error_code


I'm catching errors in Boost Asio program like

if (!error)
{
    //do stuff
}
else
{
    std::cout << "Error : " << error << std::endl;
    //handle error
}

But the error isn't human-readable (e.g. connecting to SSL server without certificate gives error asio.ssl:335544539). Is there any better way how to display error ?

解决方案

If you are likely using boost::system::error_code you can call:

error.message()

to get a more human-friendly message.

Using operator<< translates into:

os << ec.category().name() << ':' << ec.value()

Here you can check a detailed overview of the available members in error_code.

这篇关于Boost错误代码可读描述的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆