unordered_multimap::emplace_hint
Adiciona um elemento construído no lugar.
template<class ValTy>
iterator emplace(const_iterator where, ValTy&& val);
Parâmetros
Parâmetro |
Descrição |
ValTy |
O tipo de argumento do construtor in loco. |
val |
Valor a ser inserido. |
where |
Onde no recipiente para inserir (somente Dica). |
Comentários
A função de membro retorna insert(move(val)).first, usando where como um ponto de partida na seqüência controlado para procurar o ponto de inserção.(Inserção possivelmente pode ocorrer um pouco mais rapidamente, se o ponto de inserção imediatamente precede ou segue where.)
Se uma exceção é lançada durante a inserção, o contêiner é deixado inalterada e a exceção será emitida novamente.
Exemplo
// std_tr1__unordered_multimap__unordered_multimap_emplace_hint.cpp
// compile with: /EHsc
#include <unordered_map>
#include <iostream>
#include <string>
typedef std::unordered_multimap<char, int> Mymap;
int main()
{
using namespace std;
unordered_multimap<int, string> c1;
pair<int, string> is1(1, "a");
c1.emplace(move(is1));
cout << "After the emplace insertion, c1 contains:" << endl
<< " " << c1.begin()->first
<< " => " << c1.begin()->second
<< endl;
return (0);
}
Requisitos
Cabeçalho: <unordered_multimap>
Namespace: std