在C ++ STL中映射emplace_hint()函数
在本文中,我们将讨论C++STL中map::emplace_hint()函数的工作,语法和示例。
什么是C++STL中的映射?
映射是关联容器,它有助于按特定顺序存储由键值和映射值的组合形成的元素。在映射容器中,数据始终在内部借助其关联的键进行排序。映射容器中的值通过其唯一键访问。
什么是map::emplace_hint()?
map::emplace_hint()是下面的一个函数
如果要放置的元素的键是唯一的,则emplace_hint()插入新元素。仅当没有元素具有要插入的值的键时,才发生插入。
语法
map_name.emplace_hint(iterator it, Args&& args);
参数
此函数接受以下参数-
它-一个迭代器,可以视为要插入元素位置的提示。
args-我们要放在“it”位置的参数或值。
返回值
如果插入成功,则函数返回指向插入的新元素的迭代器。否则,它将迭代器返回到容器中已经存在的等效值。
示例
输入值
map<char, int> newmap; emplace_hint(newmap.end(), ‘a’, 1);
输出结果
a
示例
#include <bits/stdc++.h> using namespace std; int main() { map<int, int> TP_Map; TP_Map.emplace_hint(TP_Map.begin(), 4, 50); TP_Map.emplace_hint(TP_Map.begin(), 2, 30); TP_Map.emplace_hint(TP_Map.begin(), 1, 10); cout<<"TP Map is : \n"; cout << "MAP_KEY\tMAP_ELEMENT\n"; for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) cout << i->first << "\t" << i->second << endl; return 0; }
输出结果
TP Map is: MAP_KEY MAP_ELEMENT 1 10 2 30 4 50