![](/img/trans.png)
[英]boost::system::error_code::message() throwing access violation exception with boost::asio socket
[英]How to catch boost asio boost::system::error_code connect exception separatly from other exceptions?
Boost asio具有这样的套接字连接api 。 我有这么简单的代码:
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;
}
我只想尝试连接并捕获boost :: system :: error_code connect异常。 只有它。 我不需要再教了。 并且我需要返回-1。 怎么做这样的事情?
catch( const boost::system::system_error& ex )
{
return -1;
}
请按const引用捕获。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.