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

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

Войти
Регистрация
Восстановить пароль
 
lips
2 / 2 / 0
Регистрация: 03.01.2012
Сообщений: 287
#1

Работа с unordered_map - C++

10.12.2013, 12:47. Просмотров 445. Ответов 1
Метки нет (Все метки)

очень прошу помочь!
имеется вот такой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    struct LOCATION
    {
        DATA_TYPE       type;
        unsigned int    pos;
    };
    typedef std::unordered_map<unsigned int, LOCATION> IDToLOCATIONMap;
 
    IDToLOCATIONMap             essence_id_index_map;
    IDToLOCATIONMap             addon_id_index_map;
    IDToLOCATIONMap             talk_id_index_map;
    IDToLOCATIONMap             recipe_id_index_map;
    IDToLOCATIONMap             config_id_index_map;
 
    IDToLOCATIONMap::iterator   esssence_id_index_itr;
    IDToLOCATIONMap::iterator   addon_id_index_itr;
    IDToLOCATIONMap::iterator   talk_id_index_itr;
    IDToLOCATIONMap::iterator   recipe_id_index_itr;
    IDToLOCATIONMap::iterator   config_id_index_itr;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void elementdataman::setup_hash_map()
{
#define ADD_HASH_MAP(ids, typ, arr) \
    p.type = typ;\
    for(i=0; i<arr.size(); i++)\
    {\
    start_ptr_array[typ] = &(arr[0]);\
    p.pos = i;\
    ids##_id_index_map[arr[i].id] = p;\
}
 
    unsigned int i;
    LOCATION p;
    ///*
    ADD_HASH_MAP(addon, DT_EQUIPMENT_ADDON, equipment_addon_array);
    ADD_HASH_MAP(essence, DT_EQUIPMENT_ESSENCE, equipment_essence_array);
........................
#undef ADD_HASH_MAP
}
C++
1
2
3
4
5
6
enum DATA_TYPE {
    DT_INVALID,
    DT_EQUIPMENT_ADDON,
    DT_EQUIPMENT_ESSENCE,
........................
}
EQUIPMENT_ADDON это структура
как мне получить указатель на её первый элемент с приведением в нужный тип?
мне хотя бы зацепочку с чего начать , потому что в инете всё как то размыто написано
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2013, 12:47     Работа с unordered_map
Посмотрите здесь:

Hash_map unordered_map - C++
class P{ public: int x, y; friend bool operator&lt; (const P u, const P v) { if(u.x &lt; v.x) { return true; } else...

Доступ к элементам unordered_map - C++
struct Foo { int a,b,c; }; std::unordered_map&lt;std::pair&lt;int32_t, int32_t&gt;, std::unordered_map&lt;uint32_t, Foo&gt;&gt; bar; int...

Создание вложенного unordered_map - C++
Всем привет. Я новичок в С++. Помогите инициализировать вложенный unordered_map. #include &lt;iostream&gt; #include &lt;map&gt; #include...

Сложность операции в unordered_map - C++
Везде пишут таблицы, в которых указывают, что сложность варьируется от О(1) до О(n) Но где найти ответ на вопрос &quot;Почему?&quot;. Напишите...

Поиск по нескольким unordered_map - C++
Есть несколько десятков unordered_map с одинаковым типом ключей (uint32_t) и разными данными внутри, ключи не пересекаются никогда, нужно...

Выборка map/unordered_map по значению - C++
Добрый вечер товарищи. Я тут уже неделю мучаю голову по поводу одной &quot;глобальной&quot; задачи, из-за чего моя голова сильно греется и...

Контейнер unordered_map, содержащий потоки - C++
постановка задачи: есть некий класс Item class Item { private: int id; string text; public: Item() {

std::unordered_map и много-поточность - C++
Можно ли обращаться к объекту std::unordered_map одновременно из разных потоков? У меня ключ это ид потока, и когда что-то делаем то...

Ошибка 1083 при подключении <tr1/unordered_map> - C++
При подключении &lt;tr1/unordered_map&gt; Возникает ошибка: no such file or directory. В чем проблема?

C++1z — std::unordered_map::try_emplace — объясните работу функции - C++
Всем привет! Не могу разобраться с функцией std::unordered_map::try_emplace По ссылке есть заметка: Если я правильно понял,...

Каким образом unordered_map выдает правильное значение для ключа, если его хеш функция допускает коллизии? - C++
Читаю книгу джосаттис стандартная библиотека c++, там в разделе про unordered_map есть описание данного контейнера Раз уж каждый...

Как реализован unordered_map? - C++
Собственно, интересна именно практическая сторона вопроса, как реализуется идеальное хеширование за O(1) в среднем ясно, об этом можно...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
10.12.2013, 13:18     Работа с unordered_map #2
И к чему весь приведенный код? Где описание структуры EQUIPMENT_ADDON ?
Yandex
Объявления
10.12.2013, 13:18     Работа с unordered_map
Ответ Создать тему
Опции темы

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