在C++ STL中unordered_multiset::emplace()函数
unordered_multiset::emplace() 是C++ STL中的内置函数,可将一个新元素插入unordered_multiset容器中。插入是根据容器的标准自动完成的。它通过增加容器的大小来实现。
语法:
unordered_multiset_name.emplace(val)
参数: 该函数接受一个单一的必填参数val,要插入容器中。
返回值: 它返回一个迭代器,指向新插入的元素。
下面的程序说明了上面的函数:
程序 1:
// C++ program to illustrate the
// unordered_multiset::emplace() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
// declaration
unordered_multiset<int> sample;
// inserts element using emplace()
sample.emplace(11);
sample.emplace(11);
sample.emplace(11);
sample.emplace(12);
sample.emplace(13);
sample.emplace(13);
sample.emplace(14);
cout << "Elements: ";
for (auto it = sample.begin(); it != sample.end(); it++)
cout << *it << " ";
return 0;
}
Elements: 14 11 11 11 12 13 13
程序 2:
// C++ program to illustrate the
// unordered_multiset::emplace() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
// declaration
unordered_multiset<char> sample;
// inserts element using emplace()
sample.emplace('a');
sample.emplace('a');
sample.emplace('a');
sample.emplace('b');
sample.emplace('b');
sample.emplace('c');
sample.emplace('d');
cout << "Elements: ";
for (auto it = sample.begin(); it != sample.end(); it++)
cout << *it << " ";
return 0;
}
Elements: d a a a b b c