Unordered_multimap operator =in C ++
C++関数std::unordered_multimap ::operator =()は、古いコンテンツを置き換えて新しいコンテンツをunordered_multimapに割り当て、必要に応じてサイズを変更します。
以下は、std ::unordered_multimap ::operator =()関数formstd ::unordered_map()ヘッダーの宣言です。
C ++ 11(構文)
unordered_multimap& operator=(const unordered_multimap& umm);
パラメータ
umm - Another unordered_multimap object of same type.
戻り値
Returns this pointer.
サンプルコード
#include <iostream>
#include <unordered_map>
using namespace std;
int main(void) {
unordered_multimap umm1 = {
{'a', 1},
{'b', 2},
{'c', 3},
{'d', 4},
{'e', 5},
};
unordered_multimap umm2;
umm2 = umm1;
cout << "Unordered multimap contains following elements" << endl;
for (auto it = umm2.begin(); it != umm2.end(); ++it)
cout << it->first << " = " << it->second << endl;
return 0;
} 出力
Unordered multimap contains following elements e = 5 a = 1 b = 2 c = 3 d = 4
-
C ++STLのunordered_multimapreserve()関数
C ++STLのunordered_multimapreserved()関数は、コンテナ内のバケットの数を最も適切な数に設定して、少なくともn個の要素が含まれるようにします。 nが現在のバケット数にmax_load_factorを掛けた値よりも大きい場合、コンテナのバケット数が増加し、再ハッシュが強制されます。 Reserve()は何も返さず、要求された最小容量に従って要素の最小数を指定するパラメーターとしてnを取ります。 アルゴリズム Begin Declare the vector m. m.reserve(6) = the size
-
C ++STLのunordered_multimaprehash()関数
C ++STLのunordered_multimaprehash(N)関数は、コンテナー内のバケットの数をn以上に設定します。 nがコンテナ内の現在のバケット数よりも大きい場合、再ハッシュが強制されます。新しいバケット数は、n以上にすることができます。この関数はバケット数に影響を与えない場合があり、nがコンテナ内の現在のバケット数よりも少ない場合、再ハッシュを強制しない場合があります。 Rehash()は何も返さず、コンテナハッシュテーブルのバケットの最小数を指定するパラメータとしてnを取ります。 アルゴリズム Begin Declaring an empty map