hash_multimap::emplace_hint
[!NOT]
Bu API artık kullanılmıyor.Alternatif unordered_multimap Class.
Yerleştirme İpucu ile bir hash_multimap içine yerleştirmek için oluşturulmuş bir öğe ekler.
template<class ValTy>
iterator emplace_hint(
const_iterator _Where,
ValTy&& _Val
);
Parametreler
Parametre |
Tanımlama |
_Val |
Taşımak için kullanılan değer oluşturmak bir öğe içine hash_multimap Class sürece hash_multimap zaten o öğeye (veya daha genel anahtar sipariş eşdeğer bir öğe) içerir. |
_Where |
Ekleme noktasını doğru için aramayı başlatmak için yer ile ilgili bir ipucu. |
Dönüş Değeri
hash_multimap::emplace Üye işlevini verir, burada yeni öðe eklenir içine konumu işaret eden bir yineleyici hash_multimap.
Notlar
hash_multimap::value_type Böylece bir öğenin değerini ilk bileşen anahtar değerine eşit ve öğenin veri değerine eşit ikinci bileşeni sıralı çiftiyle bir bir çift öğesidir.
Ekleme oluşabilir Logaritmik saat yerine amortized sabit zaman hemen ekleme noktasını izleyen, _Where.
Visual C++ .NET 2003 ile üyeleri başlayan <hash_map> ve <hash_set> başlık dosyaları artık std ad alanında bulunan, ancak bunun yerine stdext ad alanına taşınmış.Bkz: ad stdext daha fazla bilgi için.
Örnek
// hash_multimap_emplace_hint.cpp
// compile with: /EHsc
#include<hash_multimap>
#include<iostream>
#include <string>
int main()
{
using namespace std;
using namespace stdext;
hash_multimap<int, string> hm1;
typedef pair<int, string> is1(1, "a");
hm1.emplace(hm1.begin(), move(is1));
cout << "After the emplace insertion, hm1 contains:" << endl
<< " " << hm1.begin()->first
<< " => " << hm1.begin()->second
<< endl;
}
Gereksinimler
Başlık: <hash_map>
Ad alanı: stdext