unordered_set::insert()是C++ STL中的内置函数,用于在unordered_set容器中插入新的{element}。仅当每个元素与容器中已经存在的任何其他元素不相等时才插入每个元素(unordered_set中的元素具有唯一值)。插入会根据容器的标准自动在该位置进行。这通过插入的元素数量有效地增加了容器的大小。
用法:
unordered_set_name.insert (Value) or, unordered_set_name.insert (InputIterator first, InputIterator last)
参数:
- Value:指定要插入到容器中的值。
- first,最后:指定元素范围的迭代器。范围为[first,last)的元素的副本将插入unordered_set容器中。请记住,范围包括first和last之间的所有元素,包括first指向的元素,但last指向的元素。
返回值:该函数返回一个迭代器,该迭代器指向容器中新插入的元素或键等效的元素。
以下示例程序旨在说明上述函数:
示例1::
#include<iostream>
#include <string>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<string> mySet = { "first", "third" };
string myString = "tenth";
// inserts key in set
mySet.insert(myString);
cout << "My set contains:"
<< endl;
for (const string& x : mySet) {
cout << x
<< " ";
}
cout << endl;
return 0;
}
输出:
My set contains: tenth first third
示例2::
// C++ program to illustrate
// unordered_set::insert()
#include <array>
#include <iostream>
#include <string>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<std::string> mySet = { "first",
"third", "second" };
array<std::string, 2> myArray = { "tenth",
"seventh" };
string myString = "ninth";
mySet.insert(myString);
// array elements range insertion in set
mySet.insert(myArray.begin(), myArray.end());
// initializer list insertion
mySet.insert({ "fourth", "sixth" });
cout << "myset contains:"
<< endl;
for (const string& x : mySet) {
cout << x
<< " ";
}
cout << endl;
return 0;
}
输出:
myset contains: sixth fourth seventh first tenth second third ninth
相关用法
- C++ set insert()用法及代码示例
- C++ unordered_multiset insert()用法及代码示例
- C++ vector insert()用法及代码示例
- C++ deque insert()用法及代码示例
- C++ multiset insert()用法及代码示例
- C++ map insert()用法及代码示例
- C++ multimap insert()用法及代码示例
- C++ std::string::insert()用法及代码示例
- C++ unordered_multimap insert()用法及代码示例
- C++ unordered_map insert用法及代码示例
- C++ list insert()用法及代码示例
注:本文由纯净天空筛选整理自AkshitaSaraf大神的英文原创作品 unordered_set insert() function in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。