[英]How to catch boost asio boost::system::error_code connect exception separatly from other exceptions?
Boost asio has such socket connect api . Boost asio具有这样的套接字连接api 。 I have such simple code:
我有这么简单的代码:
try
{
std::string addr;
std::string port;
sscanf(tcpUrl.c_str(), "tcp://%[^:]:%d", &addr, &port);
boost::asio::io_service io_service;
tcp::resolver resolver(io_service);
tcp::resolver::query query(tcp::v4(), addr.c_str(), port.c_str());
tcp::resolver::iterator iterator = resolver.resolve(query);
tcp::socket s(io_service);
s.connect(*iterator);
Sleep(250);
s.close();
}
catch (std::exception& e)
{
return -1;
}
All I want is to try to connect and catch boost::system::error_code connect exception. 我只想尝试连接并捕获boost :: system :: error_code connect异常。 Only it.
只有它。 I do not need to cach any more.
我不需要再教了。 and on it I need to return -1.
并且我需要返回-1。 How to do such thing?
怎么做这样的事情?
catch( const boost::system::system_error& ex )
{
return -1;
}
Please catch by const reference. 请按const引用捕获。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.