Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
547ytf
0 / 0 / 0
Регистрация: 10.03.2014
Сообщений: 9
#1

Stdext::hash_map и std::map - C++

10.03.2014, 23:49. Просмотров 665. Ответов 1
Метки нет (Все метки)

Здравствуйте форумчане! Может ли кто нибудь объяснить мне отличие stdext::hash_map от std::map? В интернете не так много информации о нем, а на cplusplus.com её нету.
Единственное что я понял - stdext::hash_map использует какую то функцию, которая влияет на хранение данных)
В принципе ничего особенного не прошу) Мне хватит куска кода, который наглядно показывает работу stdext::hash_map. Единственная просьба - не слишком замудренную hash функцию Спасибо!

PS Использовать мне её обязательно согласно заданию из универа. К сожалению, преподаватель считает, что столь не популярную функцию студент должен понять и изучить сам.

Спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2014, 23:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Stdext::hash_map и std::map (C++):

Возможно ли создать контейнер std::map, в котором в качестве значения была бы ссылка на std::map? - C++
Здравствуйте. Возможно ли создать контейнер std::map, в котором в качестве значения была бы ссылка на std map? Например: std::map...

Emplace в std::map. Как добавить элемент в std::map без копирования? - C++
здравствуйте... есть ли способ не писать так: std::map<int, char> ksa; ksa.emplace(std::piecewise_construct, ...

Чем отличается map и hash_map в плюсах? - C++
Чем отличается map и hash_map в плюсах? с hash_map еще не работал, хочу разобраться есть ли семантические отличия и в чем заключаются.

std::map, std::vector и порядок обхода коллекции - C++
Здравствуйте, уважаемые! Вопрос следующий - если я сохраняю какие-то значения в map или вектор, то всегда ли я буду получать тот-же...

Стоит ли очищать в деструкторе std::map , std::vecotor? - C++
У меня ещё один нубский вопрос :) Вот если в классе объявлены мапы и вектора, которые по ходу программы как то заполняются, нужно ли мне...

Потокобезопасность std::map::end, std::list::end - C++
Собсна сабж, могу ли я без синхронизаций выполнять подобного рода код if (myIter != map.end()) // != list.end() {...} myIter =...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DrOffset
7152 / 4293 / 968
Регистрация: 30.01.2014
Сообщений: 7,094
11.03.2014, 00:16 #2
547ytf, эта штука вообще-то нестандартная.
Отличие в интерфейсе от std::map минимальное.
В реализации std::map обычно используется красно-черное дерево.
std::map - это упорядоченная коллекция.

hash_map реализуется через хэш-таблицу.
hash_map требует наличия хорошей hash функции для ключа.
hash_map - это неупорядоченная коллекция.

На сегодняшний день стандартная реализация hash_map называется std::unordered_map, если доступен компилятор С++11, то использовать таки лучше ее (условие задания ты не нарушишь, т.к. и то и другие хэш-коллекция).

Примерчик для hash_map есть в msdn.
Для std::unordered_map примерчики есть повсюду.
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2014, 00:16
Привет! Вот еще темы с ответами:

Std::map::emplace - C++
То ли я туплю/криво поставил компилятор, то ли это emplace синтаксис кривой, но... Как использовать emplace применительно к map со...

Особенности std::map - C++
Добрый день форумчане, хотел спросить такую вещь, сейчас занимаюсь оптимизацией в графическом движке и возникла такая проблемма, хочу...

allocator std::map - C++
Подскажите вопрос, есть тестовое задание: Подскажите где про это почитать и разъясните по-возможности, что это вообще такое...

std::map не компилируется - C++
Всем здравствуйте. Возникла проблема при попытке использования std::map в visual studio 2010. при подключении файла <map> и объявлении...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru