Partager via


hash_set::emplace_hint

[!REMARQUE]

Cette API est obsolète.l'alternative est unordered_set Class.

Insère un élément construit en place dans un hash_set.

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

Paramètres

Paramètre

Description

_Val

La valeur d'un élément à insérer dans hash_set Class à moins qu' hash_set contienne déjà cet élément ou, plus généralement, un élément dont la clé est de façon équivalente classée.

_Where

L'emplacement pour commencer à rechercher le point correct d'implémentation.(L'implémentation peut se produire dans le temps fixe amorti, au lieu du temps logarithmique, si le point d'insertion suit immédiatement _Where.)

Valeur de retour

La fonction membre d' hash_set::emplace retourne un itérateur qui indique la position où le nouvel élément a été inséré dans hash_set, ou lorsque l'élément existant avec le classement équivalent est localisé.

Notes

L'implémentation peut se produire dans le temps fixe amorti, au lieu du temps logarithmique, si le point d'insertion suit immédiatement _Where.

Dans Visual C++ .NET 2003, les membres des fichiers d'en-tête de <hash_map> et de <hash_set> ne sont plus dans l'espace de noms de DST, mais plutôt ont été déplacés dans l'espace de noms de stdext.Pour plus d'informations, consultez The stdext Namespace.

Exemple

// hash_set_emplace_hint.cpp
// compile with: /EHsc
#include <hash_set>
#include <iostream>
#include <string>

int main( )
{
   using namespace std;
   using namespace stdext;
   hash_set<string> hs3;
   string str1("a");

   hs3.insert(hs3.begin(), move(str1));
   cout << "After the emplace insertion, hs3 contains "
      << *hs3.begin() << "." << endl;
}
  

Configuration requise

en-tête : <hash_set>

Stdext del'espace de noms :

Voir aussi

Référence

hash_set Class

Modèles Standard