unordered_set::emplace()函數是C++ STL中的內置函數,用於在unordered_set容器中插入元素。僅當元素尚未出現在容器中時才插入。這種插入也有效地增加了容器的尺寸1。
用法:
unordered_set_name.emplace(element)
參數:此函數接受單個參數element ,該元素將插入到unordered_set容器中。
返回值:成功插入時,此函數返回一對。該對由指向新插入元素的迭代器和布爾值True組成。如果容器中已經存在要插入的元素,則它將返回一個帶有迭代器的對,該迭代器指向已經存在的元素,並且布爾值為false。
以下示例程序旨在說明unordered_set::emplace()函數:
示例1::
// C++ program to illustrate the
// unordered_set::emplace() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<int> sampleSet;
// Inserting elements
sampleSet.emplace(5);
sampleSet.emplace(10);
sampleSet.emplace(15);
sampleSet.emplace(20);
sampleSet.emplace(25);
// displaying all elements of sampleSet
cout << "sampleSet contains: ";
for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
cout << *itr << " ";
}
return 0;
}
輸出:
sampleSet contains: 25 5 10 15 20
示例2::
// C++ program to illustrate the
// unordered_set::emplate() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<string> sampleSet;
// Inserting elements using
// emplace() function
sampleSet.emplace("Welcome");
sampleSet.emplace("To");
sampleSet.emplace("GeeksforGeeks");
sampleSet.emplace("Computer Science Portal");
sampleSet.emplace("For Geeks");
// displaying all elements of sampleSet
cout << "sampleSet contains: ";
for (auto itr = sampleSet.begin(); itr != sampleSet.end(); itr++) {
cout << *itr << " ";
}
return 0;
}
輸出:
sampleSet contains: Welcome To GeeksforGeeks For Geeks Computer Science Portal
相關用法
- C++ vector emplace()用法及代碼示例
- C++ list emplace()用法及代碼示例
- C++ unordered_multiset emplace()用法及代碼示例
- C++ unordered_multimap emplace()用法及代碼示例
- C++ set::emplace()用法及代碼示例
- C++ map emplace()用法及代碼示例
- C++ deque emplace用法及代碼示例
- C++ stack emplace()用法及代碼示例
- C++ unordered_map emplace()用法及代碼示例
- C++ queue::emplace()用法及代碼示例
- C++ priority_queue emplace()用法及代碼示例
- C++ multiset::emplace()用法及代碼示例
- C++ multimap::emplace()用法及代碼示例
注:本文由純淨天空篩選整理自barykrg大神的英文原創作品 unordered_set emplace() function in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。