unordered_multimap::emplace_hint
構築された要素を適切な場所に追加します。
template<class ValTy>
iterator emplace(const_iterator where, ValTy&& val);
パラメーター
パラメーター |
Description |
ValTy |
インプレース コンストラクターの引数の型。 |
val |
挿入する値。 |
where |
コンテナー内の挿入位置 (ヒントのみ)。 |
解説
このメンバー関数は、被制御シーケンス内の挿入位置の検索開始位置として where を使用して、insert(move(val)).first を返します。挿入位置が where の直前または直後である場合、挿入処理が若干速くなる可能性があります。
挿入時に例外がスローされた場合、コンテナーは変更されず、再度例外がスローされます。
使用例
// 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);
}
必要条件
ヘッダー: <unordered_multimap>
名前空間: std