В моем приложении c ++ я хочу определить, указывают ли два идентификатора хоста (имя или IP-адрес) на один и тот же хост (включая локальный и сетевой IP-адреса). Например, "google.com"
и "209.85.148.105"
одинаковы, "127.0.0.1"
возможно одинаков с любым идентификатором хоста.
Другими словами, есть функция:
bool test_host(std::string const & host, std::set<std::string, case_insensitive_comparator> const & host_ids)
{
return host_ids.find(host) != host_ids.end();
}
Но я не знаю, как создать host_ids
. Так как мне поступить?
P.S. Мое приложение кроссплатформенное, и я хотел бы получить такой ответ, который будет работать как для Unix, так и для Windows.