map::emplace_hint()是C++ STL中的內置函數,它將鍵及其元素插入具有給定提示的映射容器中。它有效地將容器大小增加了一個,因為映射是存儲具有元素值的鍵的容器。所提供的提示不會影響要輸入的位置,它隻會增加插入速度,因為它指向要開始搜索排序的位置。它以相同的順序插入,隨後是容器。它的函數類似於map::emplace()函數,但有時比用戶準確提供位置的速度要快。如果Map容器中已經存在鍵,則它不會在元素中插入鍵,因為Map僅存儲唯一鍵。
用法:
map_name.emplace_hint(position, key, element)
參數:該函數接受三個強製性參數鍵,如下所述:
- key -指定要插入Map容器的鍵。
- element -指定要插入Map容器的鍵元素。
- position -指定從中開始排序搜索操作的位置,從而使插入速度更快。
返回值:該函數不返回任何內容。
// C++ program to illustrate the
// map::emplace_hint() function
#include <bits/stdc++.h>
using namespace std;
int main()
{
// initialize container
map<int, int> mp;
// insert elements in random order
mp.emplace_hint(mp.begin(), 2, 30); // faster
mp.emplace_hint(mp.begin(), 1, 40); // faster
mp.emplace_hint(mp.begin(), 3, 60); // slower
// prints the elements
cout << "\nThe map is:\n";
cout << "KEY\tELEMENT\n";
for (auto itr = mp.begin(); itr != mp.end(); itr++)
cout << itr->first << "\t" << itr->second << endl;
return 0;
}
輸出:
The map is: KEY ELEMENT 1 40 2 30 3 60
相關用法
- C++ div()用法及代碼示例
- C++ log()用法及代碼示例
- C++ fma()用法及代碼示例
- C++ wcsncmp()用法及代碼示例
- C++ wcsrtombs()用法及代碼示例
- C++ wcstol()用法及代碼示例
- C++ wcstod()用法及代碼示例
- C++ iswxdigit()用法及代碼示例
- C++ towlower()用法及代碼示例
- C++ strtoumax()用法及代碼示例
注:本文由純淨天空篩選整理自gopaldave大神的英文原創作品 map emplace_hint() function in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。