2
Boost asio有这样的socket connect api。我有这样简单的代码:如何捕获提升asio boost :: system :: error_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;
}
我只想尝试连接并捕获boost :: system :: error_code连接异常。只有它。我不需要再犯。在它上面我需要返回-1。如何做这样的事情?
+1常量参考 – 2010-11-20 01:38:01
请您详细说明一下吗?为什么const ref? – Jon 2015-12-01 14:54:33
参考因为你不想复制。因为你不想改变它。 – 2015-12-01 21:56:19