本文整理汇总了C++中Address::addr_in方法的典型用法代码示例。如果您正苦于以下问题:C++ Address::addr_in方法的具体用法?C++ Address::addr_in怎么用?C++ Address::addr_in使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Address
的用法示例。
在下文中一共展示了Address::addr_in方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: connect
static void connect(uv_tcp_t* handle, const Address& address, void* data,
Callback cb) {
Connector* connector = new Connector(address, data, cb);
int rc = 0;
#if UV_VERSION_MAJOR == 0
if (address.family() == AF_INET) {
rc = uv_tcp_connect(&connector->req_, handle, *address.addr_in(),
on_connect);
} else {
rc = uv_tcp_connect6(&connector->req_, handle, *address.addr_in6(),
on_connect);
}
#else
rc = uv_tcp_connect(&connector->req_, handle, address.addr(),
on_connect);
#endif
if (rc != 0) {
connector->status_ = -1;
connector->cb_(connector);
delete connector;
}
}
示例2: compare
int Address::compare(const Address& a) const {
if (family() != a.family()) {
return family() < a.family() ? -1 : 1;
}
if (family() == AF_INET) {
if (addr_in()->sin_addr.s_addr != a.addr_in()->sin_addr.s_addr) {
return addr_in()->sin_addr.s_addr < a.addr_in()->sin_addr.s_addr ? -1 : 1;
}
} else if (family() == AF_INET6) {
return memcmp(&(addr_in6()->sin6_addr), &(a.addr_in6()->sin6_addr),
sizeof(addr_in6()->sin6_addr));
} else {
assert(false);
return -1;
}
return 0;
}