one post in the boost mailing list किसी में किसी और इस तरह यह करने के लिए लग रहा था (कॉपी, पुन: स्वरूपित, सेवा नंबर बदल गया है, और कुछ नहीं):
namespace bai = boost::asio::ip;
bai::tcp::endpoint ep(bai::address_v4(0xD155AB64), 0); // 209.85.171.100:0
boost::asio::io_service ios;
bai::tcp::resolver resolver(ios);
bai::tcp::resolver::iterator iter = resolver.resolve(ep);
bai::tcp::resolver::iterator end;
while (iter != end)
{
std::cerr << (*iter).host_name() << std::endl; // cg-in-f100.google.com
++iter;
}
के रूप में आप सही ढंग से कहा, यहाँ एक सेवा अभी भी में पारित हो जाता है, लेकिन एक Boost.Asio कोड के माध्यम से कदम (resolver_service.hpp
में, मैं नहीं बल्कि वर्ष 1.36 रिहाई उपयोग कर रहा हूँ) इस का पता चला:
// First try resolving with the service name. If that fails try resolving
// but allow the service to be returned as a number.
तो, बस 0 के साथ जाना है, और यह आप क्या चाहते हैं क्या करना चाहिए।
यह न लें कि आप पोर्ट नंबर "एपी (बाई :: पता_वी 4 (0xD155AB64), 80) का उपयोग करें; // 20 9.85.171.100:80" – Artyom
मैंने थोड़ा सा उदाहरण संशोधित किया, उम्मीद है कि इससे मदद मिलती है। – gimpf