unordered_map::cend()是C++ STL中的内置函数,该函数返回一个迭代器,该迭代器指向容器中或其中一个存储桶中结束元素之后的位置。在unordered_map对象中,不能保证将哪个特定元素视为其第一个元素。但是容器中的所有元素都被覆盖了,因为范围从其开始到结束直到无效。
此函数有两种变体。
语法1:
unordered_map.cend()
参数:该函数不接受任何参数。
返回类型:该函数将迭代器返回到容器末尾的元素。
// CPP program to illustrate
// unordered_map cend()
#include <bits/stdc++.h>
using namespace std;
int main()
{
unordered_map<int, int> ump;
// inserting data into unordered_map
ump[1] = 2;
ump[3] = 4;
ump[5] = 6;
// here 'it' can not be modified
for (auto it = ump.cbegin(); it != ump.cend(); ++it)
cout << it->first << " " << it->second << endl;
return 0;
}
输出:
5 6 1 2 3 4
语法2:
unordered_map.cend ( size n )
参数:此函数接受参数大小n,该大小应小于存储桶数。返回类型:函数将迭代器返回到其存储桶计数之一。
// CPP program to illustrate
// unordered_map cend()
#include <bits/stdc++.h>
using namespace std;
int main()
{
unordered_map<int, int> ump;
// inserting data into unordered_map
ump[1] = 2;
ump[3] = 4;
ump[5] = 6;
cout << "unordered_map bucket contains \n";
for (int i = 0; i < ump.bucket_count(); i++) {
cout << "Bucket " << i << " contains ";
for (auto it = ump.cbegin(i); it != ump.cend(i); ++it)
cout << it->first << " " << it->second;
cout << endl;
}
return 0;
}
输出:
unordered_map bucket contains Bucket 0 contains Bucket 1 contains 1 2 Bucket 2 contains Bucket 3 contains 3 4 Bucket 4 contains Bucket 5 contains 5 6 Bucket 6 contains
cend()与有什么不同C++ - unordered_map end( )用法及代码示例?
cend()是end()的常量版本。同样,cbegin()是begin()的const版本。例如,以下代码显示了编译器错误,因为我们尝试在迭代器中修改值。
// CPP program to illustrate
// unordered_map cend()
#include <bits/stdc++.h>
using namespace std;
int main()
{
unordered_map<int, int> ump;
// inserting data into unordered_map
ump[1] = 2;
ump[3] = 4;
ump[5] = 6;
// here 'it' can not be modified
for (auto it = ump.cbegin(); it != ump.cend(); ++it)
it->second = 10; // COMPILER ERROR
return 0;
}
输出:
Compilation Error in CPP code:- prog.cpp:In function 'int main()': prog.cpp:19:20:error:assignment of member 'std::pair::second' in read-only object it->second = 10; // COMPILER ERROR
相关用法
- C++ forward_list::cend()用法及代码示例
- C++ unordered_multiset cend()用法及代码示例
- C++ unordered_multimap cend()用法及代码示例
- C++ unordered_set cend()用法及代码示例
- C++ map cbegin()、cend()用法及代码示例
- C++ set cbegin()、cend()用法及代码示例
- C++ list cbegin()、cend()用法及代码示例
- C++ multiset cbegin()、cend()用法及代码示例
- C++ array::cbegin()、array::cend()用法及代码示例
- C++ multimap::cbegin()、multimap::cend()用法及代码示例
- C++ vector::cbegin()、vector::cend()用法及代码示例
- Node.js fs.statSync()用法及代码示例
- Node.js fs.mkdirSync()用法及代码示例
注:本文由纯净天空筛选整理自ankit15697大神的英文原创作品 unordered_map cend in C++ STL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。