unordered_multimap::insert
Insere um elemento ou um intervalo de elementos em um unordered_multimap.
// (1) single element pair<iterator, bool> insert( const value_type& Val ); // (2) single element, perfect forwarded template<class ValTy> pair<iterator, bool> insert( ValTy&& Val ); // (3) single element with hint iterator insert( const_iterator Where, const value_type& Val ); // (4) single element, perfect forwarded, with hint template<class ValTy> iterator insert( const_iterator Where, ValTy&& Val ); // (5) range template<class InputIterator> void insert( InputIterator First, InputIterator Last ); // (6) initializer list void insert( initializer_list<value_type> IList );
Parâmetros
Parâmetro |
Descrição |
Val |
O valor de um elemento a ser inserido em unordered_multimap. |
Where |
O local a partir do qual se começa a procurar pelo ponto de inserção correto. |
ValTy |
O parâmetro de modelo que especifica o tipo de argumento que unordered_multimap pode usar para construir um elemento de value_type e aperfeiçoar/encaminhar Val como argumento. |
First |
A posição do primeiro elemento a ser copiado. |
Last |
A posição imediatamente após o último elemento a ser copiado. |
InputIterator |
Argumento da função de modelo que atende aos requisitos de um iterador de entrada que aponta para elementos de um tipo que pode ser usado para construir objetos value_type. |
IList |
A initializer_list da qual os elementos serão copiados. |
Valor de retorno
As funções do membro de inserir elemento único, (1) e (2), retornam um iterador para a posição em que o novo elemento foi inserido no unordered_multimap.
As funções do membro de inserir elemento único, (3) e (4), retornam um iterador para a posição em que o novo elemento foi inserido no unordered_multimap.
Comentários
Nenhum ponteiro ou referência é invalidado por esta função, mas ela pode invalidar todos os iteradores para o contêiner.
Durante a inserção de apenas um elemento, se uma exceção for lançada, mas não ocorrer na função hash do contêiner, o estado do contêiner não é modificado. Se a exceção for lançada na função hash, o resultado é indefinido. Durante a inserção de vários elementos, se uma exceção for lançada, o contêiner será deixado em um estado não especificado, mas válido.
O value_type de um contêiner é um typedef que pertence ao contêiner, e para o mapa, map<K, V>::value_type é pair<const K, V>. O valor de um elemento é um par ordenado no qual o primeiro componente é igual ao valor chave e o segundo componente é igual ao valor dos dados do elemento.
A função do membro de intervalo (5) insere a sequência de valores de elemento em um unordered_multimap que corresponde a cada elemento tratado por um iterador no intervalo[First, Last); portanto, Last não é inserido. A função de membro do contêiner end() refere-se à posição logo após o último elemento no contêiner, por exemplo, a instrução m.insert(v.begin(), v.end()); insere todos os elementos de v em m.
A função do membro da lista do inicializador (6) usa um initializer_list para copiar elementos no unordered_multimap.
Para inserir um elemento construído no lugar (ou seja, sem a realização de operação de cópia ou movimentação), consulte unordered_multimap::emplace e unordered_multimap::emplace_hint.
Para obter um exemplo de código, consulte multiset::insert.
Requisitos
Cabeçalho: <unordered_map>
Namespace: std