Поделиться через


hash_map::emplace_hint

ПримечаниеПримечание

Этот API устарел.Альтернативы unordered_map Class.

Вставляет построенный элемент в размещение в hash_map с подсказкой размещения.

template<class ValTy>
    iterator emplace_hint(
        const_iterator _Where,
        ValTy&& _Val
);

Параметры

Параметр

Описание

_Val

Значение, используемое для перемещения конструкция элемент, вставляемый в hash_map Class если hash_map уже не будет содержать один элемент (или более общем случае элемент, ключ которого соответствует упорядочен).

_Where

Подсказка относительно размещения, чтобы начать поиск правильного точки вставки.

Возвращаемое значение

Функция-член hash_multimap::emplace возвращает итератор, который указывает на месте, куда был вставлен новый элемент или в hash_map, где можно найти существующий элемент с порядком числа.

Заметки

hash_map::value_type элемента пары, так как значение элемента упорядоченной ключом с первым компонентом равно значению ключа и вторым компонентом равно значению данных элемента.

Вставка может происходить в буферизации постоянного времени, вместо основания времени, если точка вставки непосредственно за _Where.

Начинайте с Visual C++ .NET 2003 элементами <hash_map> и файлами заголовков <hash_set> больше не находятся в пространстве имен std, но скорее перейти на пространство имен stdext.Дополнительные сведения см. в разделе Пространство имен stdext.

Пример

// hash_map_emplace_hint.cpp
// compile with: /EHsc
#include<hash_map>
#include<iostream>
#include <string>

int main()
{
    using namespace std;
    using namespace stdext;
    hash_map<int, string> hm1;
    typedef pair<int, string> is1(1, "a");

    hm1.emplace(hm1.begin(), move(is1));
    cout << "After the emplace, hm1 contains:" << endl
      << " " << hm1.begin()->first
      << " => " << hm1.begin()->second
      << endl;
}
  

Требования

заголовок: <hash_map>

Stdext пространство имен:

См. также

Ссылки

hash_map Class

Стандартная библиотека шаблонов