在C++ STL中的unordered_set cend()函数
unordered_set::cend() 方法是C++ STL中的一个内置函数,用于返回一个 const_iterator ,指向unordered_set容器或其桶中 past-the-end 元素。该函数不直接指向容器中的任何元素,仅用于表示容器的结尾或范围的开放端,例如[cbegin,cend)。
注意: const_iterator 只能用于访问元素,不能修改容器中的元素。
语法:
unordered_set_name_.cend(n);
参数: 该函数接受一个参数 n 。这是一个可选参数,指定桶号。如果未传递此参数,则cend()方法将返回一个 const_iterator ,指向容器的最后一个元素的位置。如果传递了此参数,则cend()方法将返回一个 const_iterator ,指向unordered_set容器中特定桶的最后一个元素的位置。
返回值: 该函数返回一个指向容器中最后一个元素或特定桶中的位置的 const_iterator 。下面的程序说明了具体实现。
程序1:
// C++ program to illustrate the
// unordered_set::cend() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<int> sampleSet;
//将元素插入样本集中
sampleSet.insert(5);
sampleSet.insert(10);
sampleSet.insert(15);
sampleSet.insert(20);
sampleSet.insert(25);
//此处使用cend()方法来迭代 unordered_set 容器中的元素范围
cout << "Elements present in sampleSet are: \n";
for (auto itr = sampleSet.cbegin(); itr != sampleSet.cend();
itr++) {
cout << *itr << endl;
}
return 0;
}
输出:
Elements present in sampleSet are:
25
5
10
15
20
程序2:
// C++ program to illustrate the
// unordered_set::cend() function
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
unordered_set<string> sampleSet;
//将元素插入样本集中
sampleSet.insert("Welcome");
sampleSet.insert("To");
sampleSet.insert("GeeksforGeeks");
sampleSet.insert("Computer Science Portal");
sampleSet.insert("For Geeks");
//此处使用cend()方法来迭代 unordered_set 容器中的元素范围
cout << "Elements present in sampleSet are: \n";
for (auto itr = sampleSet.cbegin(); itr != sampleSet.cend();
itr++) {
cout << *itr << endl;
}
return 0;
}
输出:
Elements present in sampleSet are:
Welcome
To
GeeksforGeeks
For Geeks
Computer Science Portal
时间复杂度: O(1)