在 C++ STL 中的unordered_multimap emplace() 函数
unordered_multimap::emplace() 是C++ STL中的内置函数,用于在 unordered_multimap 容器中插入一个新的 {key,element}。根据容器的标准自动在位置进行插入。它将容器的大小增加一。
语法:
unordered_multimap_name.emplace(key, element)
参数: 该函数接受两个参数,一个是“键”,一个是要插入容器的“元素”。
返回值: 它返回一个迭代器,指向新插入的元素。
下面的程序说明了上述函数:
程序1:
// C++程序示例
// unordered_multimap::emplace()
#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;
int main()
{
    //声明
    unordered_multimap<int, int> sample;
    //插入“键”和“元素”
    sample.emplace(1, 2);
    sample.emplace(1, 2);
    sample.emplace(1, 3);
    sample.emplace(4, 9);
    sample.emplace(60, 89);
    cout << "键和元素:\n";
    for (auto it = sample.begin(); it != sample.end(); it++)
        cout << "{" << it->first << ":" << it->second << "}\n ";
    return 0;
}
键和元素:
 {60:89}
 {4:9}
 {1:3}
 {1:2}
 {1:2}
程序2:
// unordered_multimap::emplace
#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;
int main()
{
    //声明
    unordered_multimap<string, string> sample;
    //插入“键”和“元素”
    sample.emplace("gopal", "dave");
    sample.emplace("gopal", "dave");
    sample.emplace("Geeks", "C++");
    sample.emplace("multimap", "functions");
    sample.emplace("multimap", "functions");
    cout << "键和元素:\n";
    for (auto it = sample.begin(); it != sample.end(); it++)
        cout << "{" << it->first << ":" << it->second << "}\n ";
    return 0;
}
键和元素:
 {multimap:functions}
 {multimap:functions}
 {Geeks:C++}
 {gopal:dave}
 {gopal:dave}
极客教程