Sdílet prostřednictvím


unordered_map::insert

Vloží prvek nebo rozsah prvků do objektu unordered_map.

// (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 ); 

Parametry

Parametr

Popis

Val

Hodnota prvku, který má být vložen do objektu unordered_map, pokud již neobsahuje prvek, jehož klíč je ekvivalentně seřazen.

Where

Místo zahájení vyhledání správného bodu vložení.

ValTy

Parametr šablony určující typ argumentu, který objekt unordered_map může použít k vytvoření prvku value_type a dokonalému předání Val jako argumentu.

First

Pozice prvního prvku, který chcete zkopírovat.

Last

Pozice bezprostředně za posledním prvkem, který chcete zkopírovat.

InputIterator

Argument funkce šablony, který splňuje požadavky vstupního iterátoru, který odkazuje na prvky typu, který lze použít k vytvoření objektů value_type.

IList

Seznam initializer_list, ze kterého chcete kopírovat prvky.

Vrácená hodnota

Jeden element členské funkce (1) a (2), vrátí dvojici jehož bool komponenta je hodnota true, pokud bylo provedeno vložení a hodnota false, pokud unordered_map již obsahuje element, jehož klíč má odpovídající hodnoty v pořadí.Komponenta iterátoru dvojice návratové hodnoty odkazuje na nově vložený prvek, pokud má komponenta bool hodnotu true, nebo na existující prvek, pokud má komponenta bool hodnotu false.

Jeden element s nápovědu členské funkce, (3) a (4) vrátí iterace odkazující na umístění, kde nového elementu byla vložena do unordered_map, nebo pokud již existuje element se ekvivalentní klíčem, do existujícího elementu.

Poznámky

Touto funkcí nejsou zneplatněny žádné iterátory, ukazatele ani odkazy.

Pokud je při vložení pouze jednoho prvku vyvolána výjimka, ale nenastane v kontejneru funkce hash, stav kontejneru se nezmění.Pokud je vyvolána výjimka ve funkci hash, výsledek není definován.Pokud je při vkládání více prvků vyvolána výjimka, kontejner zůstane v neurčeném, ale platném stavu.

To access the iterator component of a pairpr that's returned by the single-element member functions, use pr.first; to dereference the iterator within the returned pair, use *pr.first, giving you an element.Chcete-li přistupovat ke komponentě bool, použijte pr.second.Příklad naleznete v ukázce kódu dále v tomto článku.

Objekt value_type kontejneru je definice typu, který náleží do kontejneru a pro objekt map<K, V>::value_type je pair<const K, V>.Hodnota prvku je seřazená dvojice, ve které je první komponenta rovna hodnotě klíče a druhá komponenta je rovna datové hodnotě prvku.

Členskou funkci rozsahu: [5] vloží posloupnost hodnoty elementů do unordered_map, která odpovídá každý prvek řešit iterace v rozsahu [First, Last); Proto Last získat není vložena.Členská funkce kontejneru end() se vztahuje k pozici hned za posledním prvkem v kontejneru, například příkaz m.insert(v.begin(), v.end()); se pokusí vložit všechny prvky v do m.Vkládají se pouze prvky, které v rozsahu obsahují jedinečné hodnoty. Duplicitní hodnoty jsou ignorovány.Chcete-li sledovat, které prvky jsou odmítnuty, použijte jednoprvkovou verzi funkce insert.

Člen inicializátoru seznamu funkce (6) používá initializer_list ke zkopírování elementů do unordered_map.

Další informace o vložení prvku vytvořeného na místě – to znamená, že nejsou provedeny žádné operace kopírování nebo přesunutí – naleznete v tématech unordered_map::emplace a unordered_map::emplace_hint.

Příklad kódu naleznete v tématu map::insert.

Požadavky

Záhlaví: < unordered_map >

Obor názvů: std

Viz také

Referenční dokumentace

<unordered_map>

unordered_map – třída

Standardní knihovna šablon