@www
www
24 Aug 2014

я правильно понимаю, что для unordered_set<std::pair<T1,T2>>, где T1 и T2 - типы из плюсцов вроде int/uint/string/something else не определена функция хеширования? Если да, то доколе (будет ли добавлено в 14/17)?
В бусте можно делать так

typedef std::pair<uint, uint> my_pair;
typedef boost::multi_index_container<
my_pair,
boost::multi_index::indexed_by<
boost::multi_index::hashed_unique<boost::multi_index::identity<my_pair> >,
boost::multi_index::hashed_non_unique<boost::multi_index::member<my_pair, uint, &my_pair::first> >
>
> pair_set;

и всё работает

24 Aug 2014

в C++14 не добавлено. в C++17 пока вроде тоже не планируется. и вообще, плюсы — отстой

24 Aug 2014

Блджадж, это же в бусте делается буквально через

    std::size_t hash_value(std::pair<A, B> const& v)
    {
        std::size_t seed = 0;
        boost::hash_combine(seed, v.first);
        boost::hash_combine(seed, v.second);
        return seed;
    }
#tsodx/2 в ответ на /1
24 Aug 2014

то в бусте, а тут — стандарт

#tsodx/3 в ответ на /2

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.